/* Startup visibility only; the completed composition retains its existing geometry. */
body[data-presentation="loading"]>.menu-shell,body[data-presentation="error"]>.menu-shell,
body[data-presentation="loading"]>main,body[data-presentation="error"]>main{visibility:hidden}
#presentation-loading{position:fixed;inset:0;z-index:200;display:grid;place-content:center;justify-items:center;gap:16px;background:#101712;color:#e9e9e2;font:16px/1.4 Arial,sans-serif}
#presentation-loading[hidden],#presentation-retry[hidden]{display:none}
/* Placeholder menu only. Match layout and artwork are owned by style.css. */
.menu-shell{position:fixed;inset:0;z-index:10;display:flex;flex-direction:column;background:#101712;color:#e9e9e2;font:16px/1.4 Arial,sans-serif;overflow:auto}
.menu-shell [hidden],.menu-shell[hidden]{display:none}
.menu-shell button{font:inherit;border:1px solid #526052;border-radius:6px;background:#202920;color:#e9e9e2;padding:14px 22px;cursor:pointer}
.menu-shell button:hover:not(:disabled){background:#303c30}
.menu-shell button:disabled{opacity:.45;cursor:not-allowed}
.menu-shell button:focus-visible{outline:3px solid #e8ed65;outline-offset:4px}
.menu-top{display:flex;align-items:center;gap:24px;padding:28px 40px}
.menu-wordmark{font-weight:900;letter-spacing:2px}
.menu-account{margin-left:auto;display:flex;align-items:center;gap:24px;font-size:14px}
.menu-content{flex:1;display:grid;place-items:center;padding:32px 24px 100px}
.menu-content>div{width:min(100%,640px);text-align:center}
.menu-kicker{font-size:12px;letter-spacing:2px;color:#a5b29f;margin:0 0 18px}
.menu-shell .menu-title{font:900 clamp(40px,5vw,76px)/1.1 Arial,sans-serif;letter-spacing:1px;margin:0 0 40px}
.menu-shell h2{font-size:30px;margin:0 0 32px}
.menu-shell .menu-primary{display:block;width:100%;background:#e8ed65;color:#172014;border-color:#e8ed65;font-size:22px;font-weight:bold;padding:20px;margin:0 0 18px}
.menu-shell .menu-primary:hover{background:#f4ff83}
.menu-secondary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.menu-note{font-size:14px;color:#a5b29f;margin:22px 0 0}
.menu-amounts{display:grid;grid-template-columns:repeat(5,1fr);gap:12px;margin-bottom:28px}
.menu-amounts button{padding:20px 8px;font-size:24px}
.menu-amounts button[aria-pressed="true"]{border-color:#e8ed65;background:#343b20;color:#e8ed65}
.menu-selected{font-size:24px}
#menu-cancel{margin-top:28px;min-width:180px}
@media(max-width:700px){.menu-top{padding:18px;gap:12px;flex-wrap:wrap}.menu-account{gap:12px}.menu-content{padding:24px 18px 48px}.menu-secondary{gap:8px}.menu-secondary button{padding:12px 6px;font-size:13px}.menu-amounts{gap:8px}}

/* Keep existing home control positions while replacing the title artwork. */
#menu-home{padding-top:34.8px;padding-bottom:41.6px}
#menu-home .menu-title{height:1.1em;position:relative}
#menu-home .menu-logo{position:absolute;left:0;bottom:0;width:100%;height:auto;display:block;pointer-events:none}

/* Non-interactive, independent menu sprite players outside the central controls. */
.menu-mosquito{position:fixed;left:24px;top:50%;transform:translateY(-50%);width:min(440px,calc((100vw - 768px)/2));height:auto;aspect-ratio:1;pointer-events:none}
.menu-mosquito-right{left:auto;right:24px}
@media(max-width:1099px),(max-height:599px){.menu-mosquito{display:none}}
