diff --git a/index.html b/index.html index d67378b..293499a 100644 --- a/index.html +++ b/index.html @@ -78,9 +78,22 @@ if (location.hostname !== 'splatter-tennis.wuwi.one') { html { height: 100vh; } canvas { height: calc(100vh - env(safe-area-inset-top, 0px)); } } - /* desktop key hint — up in the empty top-right corner now that the rack owns the bottom edge */ - #hint { position: fixed; top: 6px; right: 10px; text-align: right; + /* desktop key hint — top-right, shifted left of the quit chip that owns the corner now */ + #hint { position: fixed; top: 6px; right: 52px; text-align: right; font: 400 10px Silkscreen, monospace; color: #6b7688; } + /* THE DOOR OUT (Oliver: every tennis screen lacked an exit — force-closing the app was the only + way back to the menu). A quiet chip during play; tapping it freezes the world and asks. */ + #quit { position: fixed; top: calc(env(safe-area-inset-top, 0px) + 8px); right: 8px; z-index: 5; } + #quit button { width: 34px; height: 34px; background: rgba(14,23,20,0.72); border: 2px solid var(--line); + color: var(--dim); font: 400 15px Silkscreen, monospace; cursor: pointer; + -webkit-tap-highlight-color: transparent; } + #qAsk { position: fixed; inset: 0; z-index: 6; background: rgba(0,0,0,0.55); + display: flex; align-items: center; justify-content: center; } + #quit[hidden], #qAsk[hidden] { display: none; } + .qBox { background: var(--solid); border: 2px solid var(--line); padding: 18px 16px; + width: min(320px, 84vw); display: flex; flex-direction: column; gap: 10px; } + .qBox p { margin: 0 0 6px; font: 400 12px Silkscreen, monospace; color: var(--cream); + text-align: center; letter-spacing: 1px; } @media (pointer: coarse) { #hint { display: none; } } /* ---- THE MENU PALETTE. The canvas HUD keeps its own blue-grey and gold; the menus are deliberately a different room — dark court green, one acid accent, and one crimson reserved for @@ -355,6 +368,14 @@ if (location.hostname !== 'splatter-tennis.wuwi.one') {
LEAVE THE MATCH?
+ + +