/* Full-screen home composition from Gabe's light/dark references. Inner pages
   retain their working controls inside a scrollable panel over the same scene. */
#menu{--nav-left:clamp(28px,4.6vw,78px);--nav-width:clamp(240px,25.6vw,350px);--nav-top:clamp(142px,24.6vh,206px);--pill-height:clamp(48px,9.2vh,74px);overflow:hidden;background:var(--ae-bg)}
#menu .launcher-shell{display:block;position:relative;isolation:isolate;width:100%;max-width:none;height:100%;min-height:100%;background:radial-gradient(ellipse at 80% 45%,#fff3d350,transparent 65%)}
#menu .launcher-art{position:absolute;inset:11% -9% -11% 26%;z-index:-2;pointer-events:none;overflow:hidden;mask-image:linear-gradient(90deg,transparent,black 12%);-webkit-mask-image:linear-gradient(90deg,transparent,black 12%)}
#menu .launcher-art canvas{display:block;width:100%;height:100%;filter:saturate(.9)}
#menu .launcher-masthead{position:absolute;left:var(--nav-left);right:clamp(26px,4vw,68px);top:clamp(25px,5.8vh,52px);display:flex;align-items:flex-start;justify-content:space-between;gap:24px;z-index:3}
#menu .launcher-brand{display:flex;align-items:center;gap:clamp(15px,1.8vw,28px);margin:0;padding:0;border:0;background:none;color:var(--ae-text);box-shadow:none;cursor:pointer;text-align:left;white-space:nowrap}
#menu .launcher-brand img{width:clamp(70px,8.8vw,112px);height:clamp(62px,10vw,98px);object-fit:contain}
#menu .launcher-brand span{font:900 clamp(32px,4vw,56px)/1.15 var(--ae-font);color:var(--ae-text);letter-spacing:-.025em;display:block}
#menu .launcher-player{display:flex;flex:none;align-items:center;gap:16px;max-width:280px;padding:4px 20px 4px 4px;border:0;border-radius:999px;background:color-mix(in srgb,var(--ae-surface) 90%,transparent);font:800 clamp(15px,1.7vw,22px) var(--ae-font);letter-spacing:0;box-shadow:none;margin-top:2px}
#menu .launcher-player:before{display:none}#menu .launcher-player img{width:clamp(45px,5vw,66px);height:clamp(45px,5vw,66px);border:3px solid var(--ae-surface);border-radius:50%}#menu .launcher-player span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
#menu .launcher-sidebar{position:absolute;top:var(--nav-top);left:var(--nav-left);bottom:36px;width:var(--nav-width);height:auto;padding:0;border:0;background:transparent;display:block;z-index:3;overflow:visible}
#menu .launcher-sidebar nav{display:flex;flex-direction:column;gap:clamp(8px,1.7vh,14px);margin:0;padding:0}
#menu .launcher-sidebar nav .launcher-pill{width:100%;min-height:var(--pill-height);height:var(--pill-height);padding:8px 26px;display:flex;justify-content:center;align-items:center;gap:10px;font:800 clamp(20px,2.1vw,29px)/1.15 var(--ae-font);border:1px solid transparent;border-radius:999px;background:var(--ae-surface);color:var(--ae-text);text-align:center;box-shadow:0 4px 16px #68462004;transition:background .18s,transform .18s,box-shadow .18s}
#menu .launcher-sidebar nav .launcher-pill.launcher-play{color:#fff8ee;background:#ff7047;border-color:transparent;font-size:clamp(24px,2.6vw,34px)}
#menu .launcher-sidebar nav .launcher-pill[aria-current=page]:not(.launcher-play){background:var(--ae-surface);border-color:var(--ae-accent)}
#menu .launcher-sidebar nav .launcher-pill:hover:enabled{transform:translateY(-2px);background:var(--ae-surface);border-color:transparent;box-shadow:0 7px 24px #443c2f13}
#menu .launcher-sidebar nav .launcher-pill.launcher-play:hover:enabled{background:#ff8159}
#menu .launcher-sidebar nav .launcher-pill:active:enabled{transform:translateY(0)}
#menu .launcher-sidebar nav .launcher-pill:disabled{opacity:.58}
#menu .launcher-pill small{font:800 10px var(--ae-font);color:var(--ae-muted);letter-spacing:0;text-transform:none;position:absolute;right:22px}
#menu .launcher-more{display:flex;flex-direction:row;justify-content:center;gap:6px 14px;flex-wrap:wrap;margin:6px 0 0}
#menu .launcher-more button{font:700 11px var(--ae-font);color:var(--ae-muted);padding:3px 0;border:0;background:none}
#menu .launcher-content{position:absolute;top:clamp(145px,23.5vh,195px);left:calc(var(--nav-left) + var(--nav-width) + 42px);right:clamp(28px,3.5vw,62px);bottom:28px;padding:28px 34px;overflow:auto;min-width:0;border:1px solid var(--ae-border);border-radius:24px;background:color-mix(in srgb,var(--ae-bg) 94%,transparent);box-shadow:0 12px 50px #0000000a;backdrop-filter:blur(20px)}
#menu .launcher-header{margin:0 0 22px;padding:0 0 14px;letter-spacing:.12em;font-size:11px}
#menu .launcher-content h1{font-size:clamp(30px,3vw,46px);line-height:1.05}
#menu .launcher-content .launcher-intro{margin-bottom:22px}
#menu[data-page=home] .launcher-content{position:static;padding:0;overflow:visible;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;pointer-events:none}
#menu[data-page=home] .launcher-header{display:none}
#menu .launcher-home-bottom{position:absolute;right:clamp(28px,4vw,68px);bottom:clamp(28px,6.7vh,62px);margin:0;display:block;pointer-events:auto;z-index:2}
#menu .launcher-devlog{width:clamp(300px,27.4vw,405px);max-width:100%;padding:18px 26px 20px;background:color-mix(in srgb,var(--ae-surface) 94%,transparent);border:0;border-radius:23px;box-shadow:0 10px 28px #51452912;backdrop-filter:blur(14px)}
#menu .launcher-devlog h2{font:800 25px/1.2 var(--ae-font);margin:0 0 6px;text-transform:none;letter-spacing:-.02em}
#menu .launcher-devlog h3{font:700 15px/1.4 var(--ae-font);margin:0;color:var(--ae-text)}
#menu .launcher-devlog p{font:600 13px/1.45 var(--ae-font);margin:5px 0 0;color:var(--ae-muted)}
#menu .launcher-devlog time{display:none}
#menu .launcher-desktop-meta{position:absolute;bottom:10px;left:var(--nav-left);pointer-events:auto;max-width:var(--nav-width)}
#menu .launcher-desktop-meta [data-desktop]{border:0;padding:0;margin:0;background:none}
#menu .launcher-desktop-meta [data-desktop] h2{font:600 10px var(--ae-font);color:var(--ae-subtle);margin:0}
#menu .launcher-desktop-meta [data-desktop] p,#menu .launcher-desktop-meta [data-desktop] button{display:none}
#menu .launcher-home-notice{position:absolute;right:4vw;bottom:205px;max-width:400px;background:var(--ae-surface);padding:14px;border-radius:14px;pointer-events:auto}
:root[data-theme=dark] #menu .launcher-shell{background:radial-gradient(ellipse at 87% 49%,#e0a17a1c,transparent 55%)}
:root[data-theme=dark] #menu .launcher-art:before{content:"";position:absolute;width:72%;height:82%;border-radius:50%;top:12%;right:-6%;background:radial-gradient(circle at 30% 35%,#ca9992,#6e686e 65%);z-index:-1;filter:blur(3px)}
:root[data-theme=dark] #menu .launcher-art canvas{filter:saturate(.85) brightness(.83) blur(1.4px)}
:root[data-theme=dark] #menu .launcher-player{background:transparent}
:root[data-theme=dark] #menu .launcher-sidebar nav .launcher-pill:not(.launcher-play){background:#373739}
:root[data-theme=dark] #menu .launcher-devlog{background:#222326ed;border-radius:13px;box-shadow:none}
@media(min-width:1600px){#menu{--nav-left:5vw;--nav-width:340px}#menu .launcher-art{inset:10% -6% -10% 28%}}
@media(max-height:730px) and (min-width:801px){#menu{--nav-top:clamp(125px,24.5vh,180px);--pill-height:clamp(44px,8.8vh,65px)}#menu .launcher-sidebar nav{gap:9px}#menu .launcher-more{margin-top:4px}#menu .launcher-masthead{top:28px}#menu .launcher-devlog{padding:17px 23px}#menu .launcher-brand img{height:82px}}
@media(max-width:1050px) and (min-width:801px){#menu{--nav-width:240px;--nav-left:32px}#menu .launcher-brand span{font-size:36px}#menu .launcher-brand img{width:80px}#menu .launcher-player{font-size:16px;padding-right:12px}#menu .launcher-content{left:300px;right:20px;padding:22px}#menu .launcher-sidebar nav .launcher-pill{font-size:21px}#menu .launcher-devlog{width:300px}#menu .launcher-art{inset:16% -18% -8% 20%}}
@media(max-width:800px){#menu{overflow:auto;--nav-left:24px;--nav-width:min(310px,calc(100vw - 48px));--nav-top:133px;--pill-height:52px}#menu .launcher-shell{min-height:820px;height:100dvh;overflow:hidden}#menu .launcher-masthead{top:24px;left:24px;right:20px;align-items:center;gap:10px}#menu .launcher-brand{gap:10px}#menu .launcher-brand img{width:50px;height:52px}#menu .launcher-brand span{font-size:clamp(22px,4.5vw,32px)}#menu .launcher-player{padding:0;background:none;max-width:120px;font-size:13px;gap:7px}#menu .launcher-player img{width:35px;height:35px;border-width:2px}#menu .launcher-player span{max-width:70px}#menu .launcher-sidebar{top:117px;bottom:auto;left:24px;width:var(--nav-width);z-index:2}#menu .launcher-sidebar nav{display:flex;flex-direction:column;gap:10px}#menu .launcher-sidebar nav .launcher-pill{width:100%;font-size:21px;padding:8px 20px}#menu .launcher-sidebar nav .launcher-pill.launcher-play{font-size:25px}#menu .launcher-more{gap:5px 14px}#menu .launcher-art{inset:30% -85% -6% 0;mask-image:linear-gradient(90deg,transparent,black 20%)}#menu .launcher-home-bottom{right:24px;bottom:35px;left:24px}#menu .launcher-devlog{width:300px;max-width:calc(100vw - 48px)}#menu .launcher-desktop-meta{bottom:13px}#menu .launcher-content{left:18px;right:18px;top:95px;bottom:18px;padding:22px;z-index:4;background:var(--ae-bg)}#menu:not([data-page=home]) .launcher-sidebar{visibility:hidden}#menu:not([data-page=home]) .launcher-header{display:flex;justify-content:space-between}#menu:not([data-page=home]) .launcher-header:after{content:"Use the logo to return home";font-size:10px;letter-spacing:0;color:var(--ae-muted)}#menu[data-page=home] .launcher-content{position:static}#menu .launcher-masthead{z-index:5}}
@media(max-width:440px){#menu .launcher-player img{display:none}#menu .launcher-player{max-width:75px}#menu .launcher-art{opacity:.62}#menu .launcher-shell{min-height:790px}#menu .launcher-more button{font-size:10px}}
@media(prefers-reduced-motion:reduce){#menu .launcher-sidebar nav .launcher-pill{transition:none}#menu .launcher-sidebar nav .launcher-pill:hover:enabled{transform:none}}

#menu .launcher-shell{overflow:hidden}
:root[data-theme=light] #menu[data-page=home]{background:#fff7e9}
:root[data-theme=dark] #menu .launcher-art:before{opacity:.55;filter:blur(12px)}

/* These inner pages now have a panel rather than the whole window. */
#menu:not([data-page=home]) .launcher-content{container-type:inline-size}
@container (max-width:900px){.sb{grid-template-columns:145px minmax(0,1fr)}.sb-detail{grid-column:1/-1}.sb-row{grid-template-columns:minmax(0,1fr) 100px 55px 55px;gap:6px;padding:0 10px}.workshop-layout{grid-template-columns:1fr}.workshop-preview{height:360px}.workshop-filters{flex-wrap:wrap}}
@container (max-width:550px){.sb{grid-template-columns:1fr}.sb-side{padding:10px}.sb-filters{flex-direction:row;flex-wrap:wrap}.sb-mode-count{display:none}#menu .sb-mode{grid-template-columns:36px minmax(0,1fr) 55px 12px;gap:8px;padding:12px 10px}.sb-row{grid-template-columns:minmax(0,1fr) 75px 45px 45px;gap:4px}.workshop-pocket,.workshop-slot{flex-wrap:wrap}.launcher-field{flex-wrap:wrap}.launcher-field select,.launcher-field input[type=number]{max-width:100%}.sb-mode-icon{width:36px;height:36px}}
