/* ================================================================
   Smart Site Booster Pro — Site-Wide Premium Wrapper CSS v2
   Targets: body.ssb-site-wrapped (added via body_class filter)
   ================================================================ */

/* ── GOOGLE FONTS IMPORT ─────────────────────────────────────── */
@import url('https://fonts.googleapis.com/css2?family=Syne:wght@700;800&family=DM+Sans:wght@400;500;600&display=swap');

/* ── CSS VARIABLES ───────────────────────────────────────────── */
:root {
  --ssb-primary:     #2563eb;
  --ssb-primary-rgb: 37,99,235;
  --ssb-accent:      #f59e0b;
  --ssb-accent-rgb:  245,158,11;
  --ssb-neon:        #00f5ff;
  --ssb-neon-rgb:    0,245,255;
  --ssb-nav-h:       60px;
  --ssb-sidebar-w:   240px;

  /* Dark palette (default) */
  --sw-bg:        #09090f;
  --sw-surface:   #111318;
  --sw-surface2:  #1a1d26;
  --sw-border:    rgba(255,255,255,.07);
  --sw-text:      #e2e8f0;
  --sw-text-muted:#64748b;
  --sw-shadow:    0 8px 32px rgba(0,0,0,.5);
  --sw-font:      'DM Sans', system-ui, -apple-system, sans-serif;
  --sw-radius:    12px;
}

/* Light mode override */
body.ssb-site-wrapped.ssb-light {
  --sw-bg:        #f8f9fc;
  --sw-surface:   #ffffff;
  --sw-surface2:  #f1f3f8;
  --sw-border:    rgba(0,0,0,.07);
  --sw-text:      #111827;
  --sw-text-muted:#6b7280;
}

/* ── BODY RESET ──────────────────────────────────────────────── */
body.ssb-site-wrapped {
  background-color: var(--sw-bg) !important;
  color: var(--sw-text) !important;
  font-family: var(--sw-font) !important;
  margin: 0 !important;
  padding-top: var(--ssb-nav-h) !important;
  transition: background-color .3s, color .3s;
}

/* Push content right when sidebar is on the left */
body.ssb-site-wrapped.ssb-has-sidebar.ssb-sidebar-left #ssb-site-content-wrap {
  margin-left: var(--ssb-sidebar-w);
  transition: margin-left .35s cubic-bezier(.4,0,.2,1);
}
body.ssb-site-wrapped.ssb-has-sidebar.ssb-sidebar-right #ssb-site-content-wrap {
  margin-right: var(--ssb-sidebar-w);
  transition: margin-right .35s cubic-bezier(.4,0,.2,1);
}
body.ssb-site-wrapped.ssb-sidebar-collapsed #ssb-site-content-wrap {
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* ── SKIP LINK (accessibility) ───────────────────────────────── */
.ssb-skip-link {
  position: fixed; top: -100px; left: 16px;
  background: var(--ssb-primary); color: #fff;
  padding: 8px 16px; border-radius: 6px; z-index: 99999;
  font-family: var(--sw-font); font-size: .85rem; font-weight: 600;
  text-decoration: none; transition: top .2s;
}
.ssb-skip-link:focus { top: 4px; }

/* ══════════════════════════════════════════════════════════════
   PREMIUM NAV BAR
══════════════════════════════════════════════════════════════ */
.ssb-site-nav {
  position: fixed;
  top: 0; left: 0; right: 0;
  height: var(--ssb-nav-h);
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 0 clamp(14px,3vw,32px);
  z-index: 9000;
  transition: background .3s, box-shadow .3s, border-color .3s;
}
.ssb-nav-glass {
  background: rgba(9,9,15,.85);
  backdrop-filter: blur(22px) saturate(160%);
  -webkit-backdrop-filter: blur(22px) saturate(160%);
  border-bottom: 1px solid rgba(var(--ssb-neon-rgb),.1);
  box-shadow: 0 1px 0 rgba(var(--ssb-neon-rgb),.07), 0 4px 24px rgba(0,0,0,.3);
}
body.ssb-light .ssb-nav-glass {
  background: rgba(248,249,252,.92);
  border-bottom-color: rgba(0,0,0,.08);
}
.ssb-nav-solid {
  background: var(--sw-surface);
  border-bottom: 1px solid var(--sw-border);
  box-shadow: var(--sw-shadow);
}
.ssb-nav-minimal {
  background: transparent;
  border-bottom: 1px solid rgba(255,255,255,.05);
}
.ssb-site-nav.ssb-nav-scrolled {
  background: rgba(9,9,15,.95) !important;
  backdrop-filter: blur(24px) !important;
  border-bottom-color: rgba(var(--ssb-neon-rgb),.12) !important;
  box-shadow: 0 4px 28px rgba(0,0,0,.4) !important;
}
body.ssb-light .ssb-site-nav.ssb-nav-scrolled {
  background: rgba(248,249,252,.97) !important;
}

/* Brand */
.ssb-nav-brand {
  display: flex; align-items: center; gap: 10px;
  text-decoration: none; flex-shrink: 0;
}
.ssb-nav-logo { height: 36px; width: auto; object-fit: contain; }
.ssb-nav-site-name {
  font-family: 'Syne', sans-serif;
  font-size: 1.05rem; font-weight: 800; letter-spacing: -.03em;
  background: linear-gradient(135deg, var(--sw-text) 40%, var(--ssb-neon) 100%);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent;
  background-clip: text; white-space: nowrap;
}

/* Menu */
.ssb-nav-menu-wrap { flex: 1; display: flex; justify-content: center; overflow: hidden; }
.ssb-nav-menu {
  list-style: none; margin: 0; padding: 0;
  display: flex; align-items: center; gap: 2px;
}
.ssb-nav-menu > li { position: relative; }
.ssb-nav-menu > li > a {
  display: flex; align-items: center;
  padding: 7px 13px;
  font-family: var(--sw-font); font-size: .85rem; font-weight: 500;
  color: var(--sw-text-muted); text-decoration: none;
  border-radius: 8px; white-space: nowrap;
  transition: color .2s, background .2s;
}
.ssb-nav-menu > li > a:hover,
.ssb-nav-menu > li.current-menu-item > a,
.ssb-nav-menu > li.current_page_item > a { color: var(--sw-text); background: rgba(255,255,255,.07); }
.ssb-nav-menu > li.current-menu-item > a,
.ssb-nav-menu > li.current_page_item > a { color: var(--ssb-neon); }
body.ssb-light .ssb-nav-menu > li > a:hover { background: rgba(0,0,0,.05); }

/* Dropdowns */
.ssb-nav-menu .sub-menu {
  position: absolute; top: calc(100% + 8px); left: 0;
  list-style: none; margin: 0; padding: 6px;
  background: var(--sw-surface); border: 1px solid var(--sw-border);
  border-radius: var(--sw-radius); box-shadow: 0 12px 40px rgba(0,0,0,.45);
  min-width: 200px; opacity: 0; pointer-events: none;
  transform: translateY(8px); transition: opacity .2s, transform .2s;
  z-index: 100; backdrop-filter: blur(12px);
}
.ssb-nav-menu > li:hover > .sub-menu,
.ssb-nav-menu > li:focus-within > .sub-menu {
  opacity: 1; pointer-events: all; transform: translateY(0);
}
.ssb-nav-menu .sub-menu li a {
  display: block; padding: 8px 12px;
  font-family: var(--sw-font); font-size: .82rem;
  color: var(--sw-text-muted); text-decoration: none;
  border-radius: 7px; transition: color .18s, background .18s;
}
.ssb-nav-menu .sub-menu li a:hover { color: var(--sw-text); background: rgba(var(--ssb-neon-rgb),.08); }

/* Nav tools */
.ssb-nav-tools { display: flex; align-items: center; gap: 6px; flex-shrink: 0; }
.ssb-nav-tool-btn {
  width: 38px; height: 38px; border-radius: 10px;
  background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.08);
  color: var(--sw-text-muted); cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  font-size: .95rem; transition: background .2s, color .2s, border-color .2s, box-shadow .2s;
}
.ssb-nav-tool-btn:hover {
  background: rgba(var(--ssb-neon-rgb),.1); border-color: rgba(var(--ssb-neon-rgb),.3);
  color: var(--ssb-neon); box-shadow: 0 0 12px rgba(var(--ssb-neon-rgb),.15);
}
.ssb-nav-ai-pill {
  display: flex; align-items: center; gap: 6px;
  background: linear-gradient(135deg,#4f46e5,#7c3aed); color: #fff;
  text-decoration: none; font-family: var(--sw-font);
  font-size: .78rem; font-weight: 600;
  padding: 7px 14px; border-radius: 50px;
  box-shadow: 0 4px 14px rgba(79,70,229,.35);
  transition: transform .2s, box-shadow .2s; white-space: nowrap;
}
.ssb-nav-ai-pill:hover { transform: translateY(-2px); box-shadow: 0 6px 20px rgba(79,70,229,.5); color: #fff; }

/* Hamburger */
.ssb-hamburger {
  display: none; flex-direction: column; gap: 5px;
  width: 38px; height: 38px; border-radius: 10px;
  background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.08);
  cursor: pointer; align-items: center; justify-content: center;
  padding: 10px 9px; transition: background .2s;
}
.ssb-hamburger span {
  display: block; width: 20px; height: 1.5px;
  background: var(--sw-text); border-radius: 2px;
  transition: transform .3s, opacity .3s;
}
.ssb-hamburger.open span:nth-child(1) { transform: translateY(6.5px) rotate(45deg); }
.ssb-hamburger.open span:nth-child(2) { opacity: 0; }
.ssb-hamburger.open span:nth-child(3) { transform: translateY(-6.5px) rotate(-45deg); }

/* ── SEARCH OVERLAY ──────────────────────────────────────────── */
.ssb-search-overlay {
  position: fixed; inset: 0;
  background: rgba(0,0,0,.75); backdrop-filter: blur(12px);
  z-index: 9100; display: flex; align-items: flex-start;
  justify-content: center; padding-top: clamp(60px,15vw,120px);
  opacity: 0; pointer-events: none; transition: opacity .25s;
}
.ssb-search-overlay.open { opacity: 1; pointer-events: all; }
.ssb-search-inner { width: min(640px, 92vw); }
.ssb-search-form {
  display: flex; align-items: center; gap: 14px;
  background: var(--sw-surface);
  border: 1px solid rgba(var(--ssb-neon-rgb),.25);
  border-radius: 16px; padding: 14px 20px;
  box-shadow: 0 24px 60px rgba(0,0,0,.6), 0 0 30px rgba(var(--ssb-neon-rgb),.1);
}
.ssb-search-form svg { flex-shrink: 0; color: var(--sw-text-muted); }
.ssb-search-input {
  flex: 1; background: none; border: none; outline: none;
  font-family: var(--sw-font); font-size: 1.1rem;
  color: var(--sw-text); caret-color: var(--ssb-neon);
}
.ssb-search-input::placeholder { color: var(--sw-text-muted); }
.ssb-search-close {
  background: none; border: none; color: var(--sw-text-muted);
  cursor: pointer; display: flex; transition: color .2s;
}
.ssb-search-close:hover { color: var(--sw-text); }
.ssb-search-hint {
  text-align: center; margin-top: 12px;
  font-family: var(--sw-font); font-size: .75rem;
  color: rgba(255,255,255,.35);
}
.ssb-search-hint kbd {
  background: rgba(255,255,255,.1); border: 1px solid rgba(255,255,255,.15);
  border-radius: 4px; padding: 1px 6px; font-size: .72rem;
}

/* ══════════════════════════════════════════════════════════════
   SIDEBAR
══════════════════════════════════════════════════════════════ */
.ssb-site-sidebar {
  position: fixed; top: var(--ssb-nav-h); bottom: 0;
  width: var(--ssb-sidebar-w);
  background: var(--sw-surface);
  overflow-y: auto; overflow-x: hidden;
  z-index: 800;
  transition: transform .35s cubic-bezier(.4,0,.2,1);
  scrollbar-width: thin; scrollbar-color: rgba(var(--ssb-neon-rgb),.2) transparent;
}
.ssb-site-sidebar::-webkit-scrollbar { width: 3px; }
.ssb-site-sidebar::-webkit-scrollbar-thumb { background: rgba(var(--ssb-neon-rgb),.2); border-radius: 2px; }
.ssb-sidebar-left  { left: 0;  border-right: 1px solid var(--sw-border); }
.ssb-sidebar-right { right: 0; border-left:  1px solid var(--sw-border); }
.ssb-site-sidebar::before {
  content: ''; display: block; height: 2px;
  background: linear-gradient(90deg,transparent,var(--ssb-neon),transparent);
  opacity: .4;
}
body.ssb-sidebar-collapsed .ssb-sidebar-left  { transform: translateX(-105%); }
body.ssb-sidebar-collapsed .ssb-sidebar-right { transform: translateX(105%); }

.ssb-sidebar-collapse-btn {
  position: absolute; top: 12px; right: 10px;
  width: 26px; height: 26px; border-radius: 50%;
  background: var(--sw-surface2); border: 1px solid var(--sw-border);
  color: var(--sw-text-muted); cursor: pointer;
  display: flex; align-items: center; justify-content: center;
  transition: color .2s, background .2s; z-index: 2;
}
.ssb-sidebar-collapse-btn:hover { color: var(--ssb-neon); }
body.ssb-sidebar-collapsed .ssb-sidebar-collapse-btn { transform: rotate(180deg); }

.ssb-sidebar-inner { padding: 48px 14px 80px; }

/* Widgets */
.ssb-sw-widget { margin-bottom: 24px; }
.ssb-sw-widget-title {
  display: flex; align-items: center; gap: 7px;
  font-family: var(--sw-font); font-size: .67rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: .12em;
  color: var(--sw-text-muted); margin-bottom: 10px;
  padding-bottom: 8px; border-bottom: 1px solid var(--sw-border);
}
.ssb-sw-post {
  display: flex; align-items: center; gap: 10px;
  padding: 7px 6px; border-radius: 8px; text-decoration: none;
  color: var(--sw-text-muted); font-family: var(--sw-font);
  font-size: .78rem; line-height: 1.35; margin-bottom: 2px;
  transition: background .18s, color .18s;
}
.ssb-sw-post:hover { background: rgba(var(--ssb-neon-rgb),.06); color: var(--sw-text); }
.ssb-sw-post-img {
  width: 38px; height: 38px; border-radius: 6px;
  background-size: cover; background-position: center;
  background-color: var(--sw-surface2); flex-shrink: 0;
}
.ssb-sw-post-no-img {
  display: flex; align-items: center; justify-content: center;
  color: rgba(var(--ssb-neon-rgb),.4); font-size: 1rem;
}
.ssb-sw-post-title { flex: 1; min-width: 0; }
.ssb-sw-cats { display: flex; flex-direction: column; gap: 3px; }
.ssb-sw-cat {
  display: flex; align-items: center; justify-content: space-between;
  padding: 6px 8px; border-radius: 7px; text-decoration: none;
  font-family: var(--sw-font); font-size: .78rem; color: var(--sw-text-muted);
  transition: background .18s, color .18s;
}
.ssb-sw-cat:hover { background: rgba(var(--ssb-neon-rgb),.07); color: var(--ssb-neon); }
.ssb-sw-cat-count {
  font-size: .68rem; background: var(--sw-surface2); color: var(--sw-text-muted);
  padding: 2px 7px; border-radius: 50px; min-width: 22px; text-align: center;
}
.ssb-sw-search-form {
  display: flex; background: var(--sw-surface2); border: 1px solid var(--sw-border);
  border-radius: 8px; overflow: hidden; transition: border-color .2s;
}
.ssb-sw-search-form:focus-within { border-color: rgba(var(--ssb-neon-rgb),.4); }
.ssb-sw-search-input {
  flex: 1; background: none; border: none; outline: none;
  padding: 8px 10px; font-family: var(--sw-font); font-size: .8rem;
  color: var(--sw-text); caret-color: var(--ssb-neon);
}
.ssb-sw-search-input::placeholder { color: var(--sw-text-muted); }
.ssb-sw-search-btn {
  background: none; border: none; padding: 8px 10px;
  color: var(--sw-text-muted); cursor: pointer; display: flex;
  align-items: center; transition: color .2s;
}
.ssb-sw-search-btn:hover { color: var(--ssb-neon); }

/* ══════════════════════════════════════════════════════════════
   CONTENT WRAP
══════════════════════════════════════════════════════════════ */
#ssb-site-content-wrap {
  min-height: 60vh;
  transition: margin .35s cubic-bezier(.4,0,.2,1);
}

/* ══════════════════════════════════════════════════════════════
   FOOTER
══════════════════════════════════════════════════════════════ */
.ssb-site-footer {
  position: relative;
  background: var(--sw-surface);
  border-top: 1px solid var(--sw-border);
  margin-top: 60px;
}
.ssb-footer-neon-top {
  position: absolute; top: -1px; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg,transparent 0%,rgba(var(--ssb-neon-rgb),.55) 50%,transparent 100%);
  box-shadow: 0 0 12px rgba(var(--ssb-neon-rgb),.3);
}
.ssb-footer-inner { max-width: 1200px; margin: 0 auto; padding: 48px clamp(16px,4vw,48px) 28px; }
.ssb-footer-grid { display: grid; grid-template-columns: 1.5fr repeat(3,1fr); gap: 40px; margin-bottom: 36px; }
.ssb-footer-logo {
  display: inline-block; font-family: 'Syne',sans-serif;
  font-size: 1.15rem; font-weight: 800; letter-spacing: -.03em;
  text-decoration: none; margin-bottom: 10px;
  background: linear-gradient(135deg,var(--sw-text),rgba(var(--ssb-neon-rgb),.8));
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}
.ssb-footer-tagline {
  font-family: var(--sw-font); font-size: .82rem; color: var(--sw-text-muted);
  line-height: 1.55; margin-bottom: 16px; max-width: 240px;
}
.ssb-footer-badge {
  display: inline-flex; align-items: center; gap: 7px;
  background: rgba(var(--ssb-neon-rgb),.07); border: 1px solid rgba(var(--ssb-neon-rgb),.18);
  border-radius: 50px; padding: 5px 14px; font-family: var(--sw-font);
  font-size: .7rem; color: var(--ssb-neon); font-weight: 500;
}
.ssb-footer-badge-dot {
  width: 5px; height: 5px; border-radius: 50%;
  background: var(--ssb-neon); box-shadow: 0 0 6px var(--ssb-neon);
  animation: ssb-sw-pulse 2s ease-in-out infinite;
}
@keyframes ssb-sw-pulse { 0%,100%{opacity:1} 50%{opacity:.3} }
.ssb-footer-col-title {
  font-family: var(--sw-font); font-size: .68rem; font-weight: 700;
  text-transform: uppercase; letter-spacing: .12em;
  color: var(--sw-text-muted); margin-bottom: 12px;
}
.ssb-footer-link {
  display: block; font-family: var(--sw-font); font-size: .82rem;
  color: var(--sw-text-muted); text-decoration: none;
  padding: 4px 0; transition: color .2s; line-height: 1.5;
}
.ssb-footer-link:hover { color: var(--ssb-neon); }
.ssb-footer-link-btn { background: none; border: none; cursor: pointer; text-align: left; width: 100%; font-family: inherit; }
.ssb-footer-bottom {
  display: flex; align-items: center; gap: 10px; flex-wrap: wrap;
  padding-top: 24px; border-top: 1px solid var(--sw-border);
  font-family: var(--sw-font); font-size: .78rem; color: var(--sw-text-muted);
}
.ssb-footer-sep { opacity: .4; }
.ssb-footer-bottom a { color: var(--sw-text-muted); text-decoration: none; transition: color .2s; }
.ssb-footer-bottom a:hover { color: var(--ssb-neon); }

/* ══════════════════════════════════════════════════════════════
   OVERLAYS
══════════════════════════════════════════════════════════════ */
.ssb-back-to-top {
  position: fixed; bottom: 90px; right: 24px;
  width: 44px; height: 44px; border-radius: 50%; border: none;
  background: var(--sw-surface); border: 1px solid var(--sw-border);
  color: var(--sw-text-muted); cursor: pointer; z-index: 8000;
  display: flex; align-items: center; justify-content: center;
  box-shadow: var(--sw-shadow); opacity: 0; pointer-events: none;
  transform: translateY(10px);
  transition: opacity .3s, transform .3s, background .2s, color .2s;
}
.ssb-back-to-top.visible { opacity: 1; pointer-events: all; transform: translateY(0); }
.ssb-back-to-top:hover {
  background: rgba(var(--ssb-neon-rgb),.12); border-color: rgba(var(--ssb-neon-rgb),.4);
  color: var(--ssb-neon); box-shadow: 0 0 18px rgba(var(--ssb-neon-rgb),.25);
}

.ssb-site-progress {
  position: fixed; top: var(--ssb-nav-h); left: 0; right: 0;
  height: 2px; background: rgba(var(--ssb-neon-rgb),.1); z-index: 8999;
  pointer-events: none;
}
.ssb-site-progress-fill {
  height: 100%; width: 0%;
  background: linear-gradient(90deg,var(--ssb-primary),var(--ssb-neon));
  box-shadow: 0 0 6px var(--ssb-neon); transition: width .1s linear;
}

.ssb-site-toast {
  position: fixed; bottom: 80px; left: 50%;
  transform: translateX(-50%) translateY(16px);
  background: var(--sw-surface); border: 1px solid var(--sw-border);
  color: var(--sw-text); font-family: var(--sw-font); font-size: .84rem;
  padding: 10px 22px; border-radius: 50px; box-shadow: var(--sw-shadow);
  opacity: 0; pointer-events: none; z-index: 99998; white-space: nowrap;
  transition: opacity .3s, transform .3s;
}
.ssb-site-toast.show { opacity: 1; transform: translateX(-50%) translateY(0); }

/* ══════════════════════════════════════════════════════════════
   CONTENT ENHANCEMENTS (theme content inside our shell)
══════════════════════════════════════════════════════════════ */
body.ssb-site-wrapped #ssb-site-content-wrap a:not([class]) {
  color: var(--ssb-primary); transition: color .2s;
}
body.ssb-site-wrapped #ssb-site-content-wrap a:not([class]):hover { color: var(--ssb-neon); }
body.ssb-site-wrapped #ssb-site-content-wrap img:not([class]) { border-radius: 8px; max-width: 100%; height: auto; }
body.ssb-site-wrapped #ssb-site-content-wrap blockquote {
  border-left: 3px solid var(--ssb-neon) !important;
  background: rgba(var(--ssb-neon-rgb),.04) !important;
  border-radius: 0 8px 8px 0; padding: 16px 20px !important;
  margin: 1.5em 0 !important; color: var(--sw-text-muted) !important;
}
body.ssb-site-wrapped #ssb-site-content-wrap code:not([class]) {
  background: var(--sw-surface2) !important; color: var(--ssb-neon) !important;
  padding: 2px 6px; border-radius: 4px; font-size: .87em;
}

/* Scroll reveal */
body.ssb-site-wrapped .ssb-sw-reveal {
  opacity: 0; transform: translateY(16px);
  transition: opacity .55s ease, transform .55s ease;
}
body.ssb-site-wrapped .ssb-sw-reveal.visible { opacity: 1; transform: translateY(0); }

/* ══════════════════════════════════════════════════════════════
   RESPONSIVE
══════════════════════════════════════════════════════════════ */
@media (max-width:1024px) {
  body.ssb-site-wrapped.ssb-has-sidebar #ssb-site-content-wrap { margin-left: 0 !important; margin-right: 0 !important; }
  .ssb-site-sidebar { transform: translateX(-105%); box-shadow: 4px 0 30px rgba(0,0,0,.5); z-index: 8500; }
  .ssb-sidebar-right { transform: translateX(105%); }
  body.ssb-sidebar-open .ssb-sidebar-left  { transform: translateX(0); }
  body.ssb-sidebar-open .ssb-sidebar-right { transform: translateX(0); }
}
@media (max-width:768px) {
  .ssb-hamburger { display: flex; }
  .ssb-nav-menu-wrap { display: none; }
  body.ssb-mobile-nav-open .ssb-nav-menu-wrap {
    display: block; position: fixed;
    top: var(--ssb-nav-h); left: 0; right: 0;
    background: var(--sw-surface); border-bottom: 1px solid var(--sw-border);
    padding: 12px; z-index: 8999; box-shadow: 0 16px 40px rgba(0,0,0,.4);
  }
  body.ssb-mobile-nav-open .ssb-nav-menu { flex-direction: column; gap: 2px; }
  body.ssb-mobile-nav-open .ssb-nav-menu > li > a { padding: 10px 12px; font-size: .9rem; }
  .ssb-footer-grid { grid-template-columns: 1fr 1fr; gap: 28px; }
  .ssb-nav-ai-pill span:last-child { display: none; }
}
@media (max-width:480px) {
  .ssb-footer-grid { grid-template-columns: 1fr; }
  .ssb-search-overlay { padding-top: 60px; }
}
@media print {
  .ssb-site-nav,.ssb-site-sidebar,.ssb-site-footer,
  .ssb-back-to-top,.ssb-site-progress,.ssb-search-overlay { display: none !important; }
  body.ssb-site-wrapped { padding-top: 0 !important; }
  #ssb-site-content-wrap { margin: 0 !important; }
}
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { transition-duration:.01ms!important; animation-duration:.01ms!important; }
}
