.appearance-toggle{display:grid;place-items:center;flex:0 0 36px;width:36px;height:36px;padding:0;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--ink);cursor:pointer}
.appearance-toggle:hover{border-color:var(--accent)}
.appearance-reset{width:28px;height:28px;flex-basis:28px}
.category-nav .category-chip{font-family:var(--sans);font-size:13px;font-weight:700;line-height:1.5;letter-spacing:0;color:var(--ink)}
.category-nav .category-chip.active{font-weight:800;border-bottom-width:3px}
.category-nav .category-chip span{font-size:10px;font-weight:600;opacity:.8}
[data-color-mode=dark] .category-nav .category-chip{color:#cad5e7}
[data-color-mode=dark] .category-nav .category-chip.active{color:#f0d49c}
.sun-icon{display:none}
[data-color-mode=dark] .moon-icon{display:none}
[data-color-mode=dark] .sun-icon{display:block}
.dialog-close{display:grid;place-items:center;width:36px;height:36px;padding:0;margin:0;line-height:1;box-shadow:0 2px 10px #0002}
.dialog-close svg{display:block;flex:none}
.menu-back-top{position:fixed;right:24px;bottom:max(24px,env(safe-area-inset-bottom));z-index:5;display:grid;place-items:center;width:52px;height:52px;padding:0;border:1px solid #b79a60;border-radius:50%;background:#122039;color:#e2c58d;box-shadow:0 5px 22px #06102030;cursor:pointer;transition:transform .2s,background .2s}
.menu-back-top:hover{transform:translateY(-3px);background:#1a2c49}
.menu-back-top::after{content:'';position:absolute;inset:4px;border:1px solid #c7a66b45;border-radius:50%;pointer-events:none}
html[data-color-mode=dark]{color-scheme:dark;--bg:#0b1426;--paper:#111e34;--ink:#f1ece2;--muted:#a4afc2;--line:#27364d;--accent:#d7b776;--soft:#182840;--hero:#0f1d33;--gold:#c8a565}
[data-color-mode=dark] .menu-top{border-top-color:var(--gold)}
[data-color-mode=dark] .wordmark{color:#e7cc94}
[data-color-mode=dark] .wordmark small{color:#aebbd0}
[data-color-mode=dark] .menu-hero{border:1px solid #b3955b60;box-shadow:0 12px 35px #03091630}
[data-color-mode=dark] .menu-hero::before{content:'';position:absolute;inset:8px;z-index:2;pointer-events:none;opacity:.7;background:linear-gradient(var(--gold),var(--gold)) left top/20px 1px no-repeat,linear-gradient(var(--gold),var(--gold)) left top/1px 20px no-repeat,linear-gradient(var(--gold),var(--gold)) right top/20px 1px no-repeat,linear-gradient(var(--gold),var(--gold)) right top/1px 20px no-repeat,linear-gradient(var(--gold),var(--gold)) left bottom/20px 1px no-repeat,linear-gradient(var(--gold),var(--gold)) left bottom/1px 20px no-repeat,linear-gradient(var(--gold),var(--gold)) right bottom/20px 1px no-repeat,linear-gradient(var(--gold),var(--gold)) right bottom/1px 20px no-repeat}
[data-color-mode=dark] .hero-copy h1{color:#f3e8ce}
[data-color-mode=dark] .hero-number{color:#e7c98e}
[data-color-mode=dark] .category-chip.active{color:#e7c98e;border-color:var(--gold)}
[data-color-mode=dark] .category-chip:hover{color:#e7c98e}
[data-color-mode=dark] .product-card{border-color:#304059;background:linear-gradient(145deg,#14223a,#101c31)}
[data-color-mode=dark] .product-card:hover{border-color:#b99a60;box-shadow:0 7px 24px #030a1833}
[data-color-mode=dark] .favorite,[data-color-mode=dark] .product-bottom strong{color:#e5c68b}
[data-color-mode=dark] .detail-arrow{color:#dfc48e;border-color:#ad905458}
[data-color-mode=dark] .section-heading h2{color:#f2e7d2}
[data-color-mode=dark] .product-placeholder{background:linear-gradient(135deg,#1a2b44,#112038);color:#d7b776}
[data-color-mode=dark] .search input::placeholder{color:#a4afc2;opacity:1}
[data-color-mode=dark] .menu-footer{position:relative;border-top-color:#ad905455}
[data-color-mode=dark] .menu-footer::before{content:'';position:absolute;top:-4px;left:50%;width:7px;height:7px;background:var(--gold);transform:rotate(45deg)}
[data-color-mode=dark] dialog{border:1px solid #b3955b70;box-shadow:0 24px 70px #0007}
[data-color-mode=dark] .menu-back-top{border-color:#d0ad6d;box-shadow:0 5px 24px #0005}
@media(max-width:640px){.menu-top-right{gap:12px}.menu-top-right .top-label{display:none}.menu-top-right .season-tag{padding-left:12px}.menu-back-top{right:18px;bottom:max(18px,env(safe-area-inset-bottom));width:48px;height:48px}.appearance-toggle{width:34px;height:34px;flex-basis:34px}}
@media(prefers-reduced-motion:reduce){.menu-back-top{transition:none}}
@media print{.appearance-toggle,.menu-back-top{display:none!important}}
.menu-tools{position:relative;z-index:4}
.menu-search-wrap{position:relative;width:320px;max-width:100%}
.menu-search-wrap .search{width:100%;margin:0}
.search-suggestions{position:absolute;top:calc(100% + 7px);right:0;left:0;z-index:10;margin:0;padding:6px;list-style:none;background:var(--paper);border:1px solid var(--line);border-radius:9px;box-shadow:0 12px 35px #07162626;max-height:360px;overflow-y:auto;overscroll-behavior:contain}
.search-suggestions li{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 10px;border-radius:5px;cursor:pointer;line-height:1.5}
.search-suggestions li:hover,.search-suggestions li[aria-selected=true]{background:var(--soft)}
.search-suggestions strong{display:block;font:700 12px/1.5 var(--sans);color:var(--ink)}
.search-suggestions small{display:block;color:var(--muted);font-size:10px;margin-top:3px}
.suggestion-price{flex-shrink:0;font-size:11px;font-weight:700;color:var(--accent)}
.search-summary{margin:7px 0 0;font-size:10px;color:var(--muted);line-height:1.5}
[data-color-mode=dark] .search-suggestions{border-color:#aa8b5066}
@media(max-width:640px){.menu-search-wrap{width:100%;margin-top:10px}.search-suggestions{max-height:min(340px,48vh)}}
#dialog-content>img{max-height:220px}
.dialog-body{padding:28px}
.product-pairings{margin-top:20px;padding-top:16px;border-top:1px solid var(--line)}
.product-pairings h3{font:700 18px/1.4 var(--sans);margin:0;color:var(--ink)}
.product-pairings .pairings-intro{font-size:11px;margin:5px 0 15px;color:var(--muted)}
.pairing-card{display:flex;align-items:center;gap:12px;width:100%;padding:10px;margin:9px 0 0;text-align:left;border:1px solid var(--line);border-radius:8px;background:var(--bg);color:var(--ink);cursor:pointer}
.pairing-card:hover{border-color:var(--accent);background:var(--soft)}
.pairing-card>img{width:66px;height:66px;flex:none;border-radius:5px;object-fit:cover}
.pairing-copy{display:block;min-width:0;flex:1}
.pairing-copy strong{display:block;font:700 12px/1.5 var(--sans)}
.pairing-copy small{display:block;color:var(--muted);font-size:9px;line-height:1.5;margin:3px 0}
.pairing-copy .pairing-price{font-size:11px;font-weight:700;color:var(--accent)}
.pairing-arrow{font-size:16px;color:var(--accent)}
[data-color-mode=dark] .product-pairings h3{color:#e7cc94}
@media(max-width:640px){#dialog-content>img{max-height:190px}.dialog-body{padding:24px}}
@media(max-width:400px){.dialog-body{padding:22px 20px}.pairing-card>img{width:54px;height:54px}.pairing-card{gap:9px}.pairing-copy strong{font-size:11px}}

/* Keep the centered close control reachable while scrolling product details. */
.dialog-close{position:sticky;top:12px;right:auto;margin:12px 12px -48px auto}
