
#sushi-menu-plugin, #sushi-menu-search-plugin, #sushi-menu-sidebar-plugin {
  --bg:#000000; --bg-deep:#0F1216; --bg-raise:#101217;
  --line:#33373D; --line-soft:#1E2227;
  --ink:#FFFFFF; --ink-2:#C9CFD6; --ink-3:#8E959D;
  --lime:#8AC53F; --lime-br:#BCE55C; --green:#007335; --green-dk:#00602c;
  --karma:#94CB41; --karma-br:#4A981C;
  --enlighten:#E458CF; --enlighten-br:#A12F88;
  --zen:#00B1CA; --zen-br:#009DB1;
  --wrap:1140px; --wide:1280px; --rail:264px; --hdr:0px; --util:0px; --findbar:84px;
  --f-head:'Anton',Impact,sans-serif; --f-body:'RedHat','Red Hat Display',Arial,sans-serif;
  
  background: transparent !important;
  color: var(--ink) !important;
  font-family: var(--f-body) !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.65 !important;
  -webkit-font-smoothing: antialiased !important;
  text-align: left !important;
}

#sushi-menu-plugin *, #sushi-menu-plugin *::before, #sushi-menu-plugin *::after,
#sushi-menu-search-plugin *, #sushi-menu-search-plugin *::before, #sushi-menu-search-plugin *::after,
#sushi-menu-sidebar-plugin *, #sushi-menu-sidebar-plugin *::before, #sushi-menu-sidebar-plugin *::after {
  box-sizing: border-box !important;
}

#sushi-menu-plugin h1, #sushi-menu-plugin h2, #sushi-menu-sidebar-plugin h1, #sushi-menu-sidebar-plugin h2 {
  font-family: var(--f-head) !important;
  font-weight: 400 !important;
  margin: 0 !important;
  letter-spacing: .01em !important;
  color: var(--ink) !important;
}

#sushi-menu-plugin h3, #sushi-menu-plugin h4, #sushi-menu-sidebar-plugin h3, #sushi-menu-sidebar-plugin h4 {
  font-family: var(--f-body) !important;
  font-weight: 700 !important;
  margin: 0 !important;
  color: var(--ink) !important;
}

#sushi-menu-plugin p, #sushi-menu-sidebar-plugin p {
  margin: 0 !important;
  color: inherit !important;
}

#sushi-menu-plugin a, #sushi-menu-sidebar-plugin a {
  color: inherit !important;
  text-decoration: none !important;
  box-shadow: none !important;
}

#sushi-menu-plugin button, #sushi-menu-sidebar-plugin button {
  font-family: inherit !important;
}

#sushi-menu-plugin .wrap, #sushi-menu-search-plugin .wrap, #sushi-menu-sidebar-plugin .wrap { width:100%; max-width:none !important; margin:0; padding:0; }

/* ---------- sticky find bar (full-width search) ---------- */
#sushi-menu-plugin .findbar { position:sticky; top:var(--hdr); z-index:50; background:rgba(10,12,15,.94); backdrop-filter:blur(8px) saturate(140%); -webkit-backdrop-filter:blur(8px) saturate(140%); border-bottom: 1px solid var(--line-soft); }
#sushi-menu-search-plugin .findbar { position:relative; z-index:50; width: 100%; }
#sushi-menu-plugin .findbar .wrap, #sushi-menu-search-plugin .findbar .wrap { max-width:none !important; padding-top:16px; padding-bottom:16px; width: 100%; }

/* ---------- left filter rail (Sidebar Shortcode) ---------- */
#sushi-menu-sidebar-plugin .rail { width: 100%; position: relative; }
#sushi-menu-sidebar-plugin .rail-box { position:relative; overflow:hidden; border-radius:16px; border:1px solid rgba(255,255,255,.055); background:var(--bg-deep); padding:22px 20px 20px; margin: 0; }
#sushi-menu-sidebar-plugin .rail-box::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg, transparent 0%, rgba(138,197,63,.30) 8%, rgba(138,197,63,.80) 28%, var(--lime) 50%, rgba(138,197,63,.80) 72%, rgba(138,197,63,.30) 92%, transparent 100%); box-shadow:0 0 14px rgba(138,197,63,.30); }
#sushi-menu-sidebar-plugin .rlabel { font-size:11px !important; font-weight:700 !important; letter-spacing:.18em !important; text-transform:uppercase !important; color:var(--ink-3) !important; margin:0 0 12px 2px !important; }
#sushi-menu-sidebar-plugin .rail-box hr { border:0 !important; border-top:1px solid var(--line-soft) !important; margin:22px 0 20px !important; background: transparent !important; height: 0 !important; }
#sushi-menu-sidebar-plugin .rhint { font-size:15px !important; line-height:1.5 !important; color:#6B727A !important; margin:-6px 0 14px 2px !important; }

#sushi-menu-sidebar-plugin .rcats { display:grid; gap:2px; }
#sushi-menu-sidebar-plugin .rcat { display:flex; align-items:center; gap:11px; padding:10px 12px; border-radius:10px; font-size:16px !important; font-weight:500 !important; color:var(--ink-2) !important; line-height:1.2 !important; border-left:2px solid transparent !important; transition:background .15s,color .15s; background: transparent; }
#sushi-menu-sidebar-plugin .rcat i { flex:0 0 auto; width:9px; height:9px; border-radius:50%; display: block; }
#sushi-menu-sidebar-plugin .rcat .n { margin-left:auto; font-size:14px !important; font-weight:400 !important; color:#5E656D !important; font-variant-numeric:tabular-nums !important; }
#sushi-menu-sidebar-plugin .rcat:hover { background:rgba(255,255,255,.045) !important; color:#fff !important; border-left-color:var(--cat) !important; }
#sushi-menu-sidebar-plugin .rcat.on { background:rgba(255,255,255,.06) !important; color:#fff !important; border-left-color:var(--cat) !important; }

/* ---------- menu sections ---------- */
#sushi-menu-plugin .search, #sushi-menu-search-plugin .search { display:flex; align-items:center; gap:12px; max-width:560px; border:1px solid var(--line); border-radius:100px; padding:0 8px 0 18px; height:52px; background:rgba(255,255,255,.02); transition:border-color .15s,box-shadow .15s; }
#sushi-menu-plugin .search:focus-within, #sushi-menu-search-plugin .search:focus-within { border-color:var(--lime); box-shadow:0 0 0 3px rgba(138,197,63,.15); }

@property --ka { syntax:'<angle>'; initial-value:0deg; inherits:false; }
@keyframes ka-spin { to { --ka:360deg; } }

#sushi-menu-plugin .search--top, #sushi-menu-search-plugin .search--top { position:relative; width:100%; max-width:none; height:52px; padding:0 8px 0 20px; gap:13px; border:2px solid transparent; background: linear-gradient(#101319,#101319) padding-box, conic-gradient(from var(--ka,0deg), var(--karma) 0%, var(--zen) 30%, var(--enlighten) 62%, var(--karma) 100%) border-box; animation:ka-spin 9s linear infinite; margin: 0; }
#sushi-menu-plugin .search--top::before, #sushi-menu-search-plugin .search--top::before { content:''; position:absolute; inset:-4px; z-index:-1; border-radius:inherit; background:conic-gradient(from var(--ka,0deg), var(--karma) 0%, var(--zen) 30%, var(--enlighten) 62%, var(--karma) 100%); filter:blur(10px); opacity:.35; transition:opacity .2s ease; pointer-events:none; }
#sushi-menu-plugin .search--top:hover::before, #sushi-menu-search-plugin .search--top:hover::before { opacity:.62; }
#sushi-menu-plugin .search--top:focus-within, #sushi-menu-search-plugin .search--top:focus-within { box-shadow:none; }
#sushi-menu-plugin .search--top:focus-within::before, #sushi-menu-search-plugin .search--top:focus-within::before { opacity:.62; }
#sushi-menu-plugin .search--top:focus-within svg, #sushi-menu-search-plugin .search--top:focus-within svg { stroke:#fff; }
@media (prefers-reduced-motion:reduce) { #sushi-menu-plugin .search--top, #sushi-menu-search-plugin .search--top { animation:none; } }
#sushi-menu-plugin .search--top svg, #sushi-menu-search-plugin .search--top svg { width:19px; height:19px; stroke: var(--ink-3); fill: none; stroke-width: 2; }
#sushi-menu-plugin .search--top input, #sushi-menu-search-plugin .search--top input { flex:1; background:0 0; border:0; color:#fff; font-size:16px; outline:0; min-width:0; padding:0; height:100%; margin: 0; box-shadow: none; font-family: inherit; }
#sushi-menu-plugin .search--top input::placeholder, #sushi-menu-search-plugin .search--top input::placeholder { color:#5E656D; opacity:1; }
#sushi-menu-plugin .search--top .clear, #sushi-menu-search-plugin .search--top .clear { background:0 0; border:0; color:#fff; font-size:24px; line-height:1; padding:0 12px; cursor:pointer; opacity:.4; transition:opacity .15s; outline:0; width: auto; height: auto; box-shadow: none; }
#sushi-menu-plugin .search--top .clear:hover, #sushi-menu-plugin .search--top .clear:focus, #sushi-menu-search-plugin .search--top .clear:hover, #sushi-menu-search-plugin .search--top .clear:focus { opacity:1; }
#sushi-menu-plugin .search--top input:placeholder-shown ~ .clear, #sushi-menu-search-plugin .search--top input:placeholder-shown ~ .clear { display:none; }

#sushi-menu-plugin .sec { scroll-margin-top:calc(var(--hdr) + var(--findbar) + 20px); padding-top: 8px; }
#sushi-menu-plugin .sec-head { margin-bottom:44px; }
#sushi-menu-plugin .sec-head h2 { font-size:42px !important; line-height:48px !important; text-transform:uppercase !important; margin:0 0 12px !important; }
#sushi-menu-plugin .sec-head p { font-size:18px !important; color:var(--ink-2) !important; max-width:540px !important; margin: 0 !important; }
#sushi-menu-plugin .rule { height:1px; width:100%; max-width:100%; border-radius:1px; margin-top:32px; opacity:.8; }

#sushi-menu-plugin .grid { display:grid; grid-template-columns:repeat(2,1fr); gap:16px 24px; }
#sushi-menu-plugin .item { position:relative; padding:18px 22px; border-radius:14px; background:transparent !important; transition:background .2s; display:flex; flex-direction:column; border: none; }
#sushi-menu-plugin .item::after { content:''; position:absolute; bottom:0; left:22px; right:22px; height:1px; background:rgba(255,255,255,.08); transition:opacity .2s; }
#sushi-menu-plugin .item::before { content:''; position:absolute; top:22px; bottom:22px; left:-12px; width:3px; background:var(--cat); border-radius:3px; opacity:0; transition:opacity .2s,transform .2s; transform:scaleY(.5); }
#sushi-menu-plugin .item:hover { background:#16191E !important; }
#sushi-menu-plugin .item:hover::after { opacity:0; }
#sushi-menu-plugin .item:hover::before { opacity:1; transform:scaleY(1); display:block; }

#sushi-menu-plugin .item-name { font-family:var(--f-body) !important; font-size:17px !important; font-weight:700 !important; color:#fff !important; margin:0 0 6px !important; line-height: 1.4 !important; letter-spacing: 0 !important; text-transform: none !important; }
#sushi-menu-plugin .item-desc { font-size:16px !important; color:var(--ink-3) !important; line-height:1.5 !important; margin:0 0 16px !important; }
#sushi-menu-plugin .tags { display:flex; flex-wrap:wrap; gap:6px; margin-top:auto; }
#sushi-menu-plugin .tag { font-size:11px !important; font-weight:700 !important; text-transform:uppercase !important; letter-spacing:.04em !important; padding:4px 8px !important; border-radius:4px !important; border:1px solid rgba(255,255,255,.1) !important; color:var(--ink-3) !important; line-height: 1 !important; }
#sushi-menu-plugin .tag.none { border-color:rgba(255,255,255,.05) !important; color:#5E656D !important; }

#sushi-menu-sidebar-plugin .frow { display:flex; flex-wrap:wrap; gap:8px; margin-bottom:24px; }
#sushi-menu-sidebar-plugin .chip-f { background:rgba(255,255,255,.03) !important; border:1px solid rgba(255,255,255,.06) !important; color:var(--ink-2) !important; font-size:14px !important; font-weight:600 !important; padding:6px 12px !important; border-radius:100px !important; cursor:pointer !important; transition:all .15s !important; line-height: 1 !important; }
#sushi-menu-sidebar-plugin .chip-f:hover { background:rgba(255,255,255,.06) !important; border-color:rgba(255,255,255,.12) !important; color:#fff !important; }
#sushi-menu-sidebar-plugin .chip-f.off { background:transparent !important; border-color:transparent !important; color:#4a5057 !important; text-decoration:line-through !important; }

#sushi-menu-sidebar-plugin .fmeta { display:flex; align-items:center; justify-content:space-between; padding-top:16px; border-top:1px solid var(--line-soft); }
#sushi-menu-sidebar-plugin .count { font-size:14px !important; color:var(--ink-3) !important; margin: 0 !important; }
#sushi-menu-sidebar-plugin .count b { color:#fff !important; font-weight:700 !important; }
#sushi-menu-sidebar-plugin .reset { font-size:14px !important; font-weight:600 !important; color:var(--lime) !important; cursor:pointer !important; transition:color .15s !important; }
#sushi-menu-sidebar-plugin .reset:hover { color:var(--lime-br) !important; }

#sushi-menu-plugin .sec + .sec { padding-top:100px; }

@media (max-width:767px) {
  #sushi-menu-plugin { --hdr:0px; --findbar:76px; }
  #sushi-menu-plugin .grid { grid-template-columns:1fr; gap:0; }
  #sushi-menu-plugin .sec-head h2 { font-size:30px !important; line-height:34px !important; }
  #sushi-menu-plugin .sec + .sec { padding-top:82px; }
  #sushi-menu-plugin .rail-box { padding:20px 18px 18px; }
  #sushi-menu-plugin .search--top { height:46px; padding:0 6px 0 16px; }
  #sushi-menu-plugin .search--top input { font-size:15px !important; }
  #sushi-menu-plugin .item::before { left:-10px; }
}
