/* Hosted Zork content only; the persistent site host owns navigation.
 * The standalone story, interpreter and app code are unchanged. */
:root { --game-font:18px; }
body.zork-host-page { margin:0; padding:0; min-width:320px; background:var(--theme-page,#101319); color:var(--theme-text,#e7e9e8); font-family:system-ui,-apple-system,sans-serif; }
#zork-player { box-sizing:border-box; width:100%; margin:0; height:var(--visual-height,100dvh); }
#zork-player main.game-shell { margin:0; }
#zork-player { color-scheme:inherit; --bg:var(--theme-page); --panel:var(--theme-surface); --ink:var(--theme-text); --muted:var(--theme-text-muted); --maize:var(--theme-accent); }
#zork-player #terminal { border-color:var(--theme-border-strong); border-top-color:var(--theme-accent); }
#zork-player .GridWindow { background:var(--theme-surface-muted)!important; }
#zork-player button { background:var(--theme-control); color:var(--theme-text); border-color:var(--theme-border-strong); }
#zork-player button.accent { background:var(--theme-accent); color:var(--theme-accent-contrast); }
#zork-player header { border-color:var(--theme-border); }
#zork-player .footer { flex-shrink:0; }
#zork-player dialog { background:var(--theme-surface-raised); color:var(--theme-text); border-color:var(--theme-border-strong); }
#zork-player .slot, #zork-player dialog input[type=text] { background:var(--theme-surface-muted); color:var(--theme-text); border-color:var(--theme-border-strong); }

@media (max-width:1000px) {
  body.zork-host-page { position:fixed; top:var(--visual-top,0px); left:0; right:0; display:flex; flex-direction:column; height:var(--visual-height,100dvh); overflow:hidden; }
  #zork-player { position:relative; flex:1; min-height:0; height:auto!important; width:100%; margin:0; padding:0 8px 4px; }
  .zork-host-page[data-short-viewport] #zork-player .footer { display:none; }
}
