/* ホームのポータル操作とゲーム内の戻る操作は同じ左上の44px枠を使う。 */
:root { color-scheme: only light; }
#app .topbar { grid-template-columns: 44px 44px minmax(0, 1fr) 44px; }
#app .home-portal-menu { grid-column: 1; grid-row: 1; }
#app .topbar > .game-back { grid-column: 1; grid-row: 1; }
#app .home-portal-menu { position: relative; z-index: 20; width: 44px; height: 44px; }
#app:not([data-screen="home"]) .home-portal-menu, #app .home-portal-menu:has([data-asobiba-link][hidden]) { display: none; }
#app .home-portal-menu > summary, #app .home-portal { box-sizing: border-box; min-height: 44px; border: 1px solid #927047; border-radius: 999px; color: #4a2a18; background: #fff6e6eb; box-shadow: 0 2px 5px #3d291c30; font: 800 13px/1 system-ui,sans-serif; text-decoration: none; touch-action: manipulation; }
#app .home-portal-menu > summary { display: grid; place-items: center; width: 44px; height: 44px; padding: 0; cursor: pointer; list-style: none; }
#app .home-portal-menu > summary::-webkit-details-marker { display: none; }
#app .home-portal-menu > summary::marker { content: ''; }
#app .home-portal-menu[open] > summary svg { transform: rotate(180deg); }
#app .home-portal { position: absolute; top: 0; left: 50px; display: flex; align-items: center; width: max-content; max-width: calc(100vw - 110px); padding: 0 16px; white-space: nowrap; }
#app .home-portal-menu:not([open]) > .home-portal { display: none; }
#app .home-portal-menu > summary:focus-visible, #app .home-portal:focus-visible { outline: 3px solid #47756a; outline-offset: 3px; }
#app .language-control { position: relative; display: flex; align-items: center; justify-content: flex-start; gap: 8px; min-width: 44px; min-height: 48px; color: #573c26; }
#app .language-control svg { width: 24px; height: 24px; fill: none; stroke: currentColor; stroke-width: 1.7; }
#app .language-control > span[aria-hidden] { display: none; }
#app .language-control select { position: static; width: calc(100% - 32px); min-height: 44px; padding: 6px 10px; opacity: 1; border: 1px solid #b69c76; border-radius: 10px; color: #493019; background: #fffaf0; font: inherit; cursor: pointer; }
#app .language-control select:focus-visible { outline: 3px solid #47756a; outline-offset: 2px; }
