header .sem-header-bag{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:44px;min-height:44px;color:var(--fg);text-decoration:none;flex-shrink:0;font-size:12px}
.sem-header-bag svg{width:22px;height:22px}
.sem-shop-menu{position:relative}
.sem-shop-menu>summary{display:flex;align-items:center;gap:8px;min-height:44px;cursor:pointer;list-style:none;font:inherit;color:inherit}
.sem-shop-menu>summary::-webkit-details-marker{display:none}
.sem-shop-menu>summary::after{content:'';width:5px;height:5px;border-right:1px solid;border-bottom:1px solid;transform:rotate(45deg);margin-top:-3px}
.sem-shop-menu[open]>summary::after{transform:rotate(225deg);margin-top:3px}
.sem-shop-menu.sem-shop-active>summary,.sem-shop-menu:has(a[aria-current])>summary{text-decoration:underline;text-underline-offset:6px}
header .sem-shop-links{position:absolute;z-index:100;inset-block-start:100%;inset-inline-start:-20px;min-width:155px;padding:12px 20px;background:var(--bg,#f7f5f0);border:1px solid var(--line,#ddd);box-shadow:0 8px 24px #0000000a;display:flex;flex-direction:column;gap:0}
header .sem-shop-links a{display:flex;align-items:center;min-height:44px}
.sem-shop-menu>summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
header>.sem-header-bag{order:3}
header>#primary-nav{margin-inline-start:auto}
header .sem-header-bag:focus-visible{outline:2px solid var(--accent);outline-offset:4px}
body:not(.studio-shell)>header .brand,body:not(.studio-shell)>header nav a{white-space:nowrap}
body:not(.studio-shell)>header.sem-compact-nav{position:relative;flex-wrap:wrap;gap:12px}
body:not(.studio-shell)>header.sem-compact-nav .brand{margin-inline-end:auto}
body:not(.studio-shell)>header.sem-compact-nav>#menu-toggle{display:inline-grid;order:4}
body:not(.studio-shell)>header.sem-compact-nav>#primary-nav{display:none;order:5;width:100%;max-width:none;margin:0;flex-wrap:wrap;justify-content:flex-start;gap:8px 24px;padding-block-start:12px}
body:not(.studio-shell)>header.sem-compact-nav.nav-open>#primary-nav{display:flex}
@media(max-width:1100px){
 body:not(.studio-shell)>header{position:relative;flex-wrap:wrap;gap:12px}
 body:not(.studio-shell)>header .brand{margin-inline-end:auto}
 body:not(.studio-shell)>header>#menu-toggle{display:inline-grid;order:4}
 body:not(.studio-shell)>header>#primary-nav{display:none;order:5;width:100%;max-width:none;margin:0;flex-wrap:wrap;justify-content:flex-start;gap:8px 24px;padding-block-start:12px}
 body:not(.studio-shell)>header.nav-open>#primary-nav{display:flex}
}
