:root{color-scheme:dark;--ink:#082b36;--gold:#f9c76a;--cream:#fff1cf;--teal:#67e1d3}*{box-sizing:border-box}html,body{margin:0;width:100%;height:100dvh;min-height:0;overflow:hidden;background:var(--ink);color:var(--cream);font-family:Arial,sans-serif}body{display:flex;flex-direction:column;padding:env(safe-area-inset-top,0) env(safe-area-inset-right,0) env(safe-area-inset-bottom,0) env(safe-area-inset-left,0);overscroll-behavior:none}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}button,a{touch-action:manipulation}.site-bar{flex:none;display:flex;align-items:center;justify-content:space-between;gap:12px;height:50px;padding:0 22px;background:#06242e;border-bottom:1px solid #e6b55a50}.back{font-size:11px;letter-spacing:1.3px;font-weight:700;color:var(--gold)}.brand{font-size:15px;letter-spacing:2px;font-weight:900}.brand em{font-style:normal;font-size:10px;color:var(--teal)}nav{display:flex;gap:16px;align-items:center;font-size:12px}button{border:1px solid #e6b55a80;border-radius:6px;background:#174653;color:var(--cream);padding:8px 12px;min-height:34px}button:hover,button:focus-visible{background:#256674;outline:2px solid var(--gold);outline-offset:2px}#game-shell{position:relative;flex:1 1 auto;min-height:0;width:100%;overflow:hidden;background:#143d4b}#unity-canvas{display:block;width:100%;height:100%;outline:none;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-touch-callout:none}#game-shell:fullscreen{width:100vw;height:100dvh}.loading{position:absolute;inset:0;display:grid;place-items:center;padding:24px;background:linear-gradient(90deg,#06242ee8,#06242e45),url(tennis-card.png) center/cover}.loading[hidden]{display:none}.loading-copy{width:min(640px,100%);padding:42px;text-align:center;background:#072c37ed;border:1px solid #e6b55a90;border-radius:12px;box-shadow:0 20px 80px #001a22b0}.eyebrow{font-size:11px;letter-spacing:3px;color:var(--teal)}h1{font-family:Georgia,serif;font-size:clamp(44px,7vw,78px);line-height:.95;letter-spacing:5px;margin:24px 0;color:var(--gold)}h1 span{display:block;font-size:.43em;letter-spacing:7px;margin-top:18px;color:var(--cream)}.tagline{font-size:13px;color:#c7dedc;line-height:1.7}.load-track{height:7px;border-radius:9px;overflow:hidden;background:#1e4a52;margin:28px 0 14px}.load-track i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--teal),var(--gold));transition:width .25s}#load-message{font-size:12px;color:#b7d5d6}footer{height:30px;flex:none;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:0 20px;background:#06242e;color:#a4c9c9;font-size:10px}#toast{position:absolute;top:14px;left:50%;transform:translateX(-50%);max-width:85%;padding:12px 20px;border:1px solid #f9c76a80;border-radius:8px;background:#06242ef0;box-shadow:0 5px 20px #0004;font-size:13px;text-align:center;pointer-events:none}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}@media(max-width:700px){.site-bar{padding:0 10px;height:44px}.brand{display:none}nav{gap:10px;font-size:11px}.back{font-size:10px}footer{height:26px;padding:0 10px;font-size:9px}footer>span:first-child{display:none}.loading-copy{padding:24px 18px}.eyebrow{letter-spacing:1.5px;font-size:9px}}@media(pointer:coarse) and (orientation:landscape){.site-bar{height:34px}.site-bar button{padding:3px 9px;min-height:27px}footer{height:20px;font-size:9px}}@media(max-height:440px){.loading-copy{padding:15px 26px}h1{font-size:38px;margin:14px 0}h1 span{margin-top:10px}.eyebrow,.tagline{margin:8px 0}.load-track{margin:14px 0 9px}}
