:root{font-family:Inter,system-ui,sans-serif;color:#f8fafc;background:#07181b}*{box-sizing:border-box}html,body,#app,#game-canvas{width:100%;height:100%;margin:0;overflow:hidden}button,select{font:inherit}#game-canvas{position:fixed;inset:0;background:radial-gradient(circle at 50% 30%,#8eb8c5,#173f46 75%)}#loading-screen{position:fixed;z-index:100;inset:0;display:grid;place-items:center;background:#07181bf2}#loading-screen[hidden]{display:none}.loading-card{width:min(420px,88vw);padding:34px;border-radius:22px;background:#f9faf4;color:#163634;box-shadow:0 24px 80px #0008}.loading-logo,.brand-logo{display:inline-grid;place-items:center;padding:8px;background:#ffd43b;color:#17322f;font-weight:900}.loading-track{height:10px;overflow:hidden;border-radius:10px;background:#d5ddd8}#loading-progress{width:0;height:100%;background:#12a8d6;transition:width .18s ease}#loading-progress.failed{background:#dc2626}#top-bar{position:fixed;z-index:10;top:0;left:0;right:0;height:76px;display:flex;align-items:center;justify-content:space-between;padding:0 28px;background:linear-gradient(#102f32ee,#102f3299);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:14px;font-weight:800;font-size:18px}.selectors{display:flex;gap:10px}select{padding:10px 14px;border:1px solid #ffffff26;border-radius:999px;color:#fff;background:#173c40db}#target-card{position:fixed;z-index:10;top:102px;left:28px;width:245px;padding:24px;background:#f9faf1ec;color:#183534;box-shadow:0 18px 40px #0003}#target-card small{letter-spacing:.17em;color:#687b78;font-weight:800}#target-symbol{display:flex;align-items:center;gap:14px;margin-top:15px}#target-letter{font-family:Georgia,serif;font-size:68px;color:#e96d29}#target-emoji{font-size:46px}#target-card h2,#target-card p{margin:3px 0 10px}#phone{position:fixed;z-index:10;top:100px;right:30px;width:225px;overflow:hidden;border:9px solid #15191a;border-radius:31px;color:#153632;background:#f6f8ef;box-shadow:0 18px 50px #0007}.phone-speaker{width:54px;height:5px;margin:8px auto;border-radius:5px;background:#050606}.phone-header{display:flex;justify-content:space-between;padding:13px;color:#fff;background:#0c312e;font-size:12px}#map-canvas{width:100%;height:230px;background:#e4eadf}#navigation-instruction{min-height:72px;padding:17px;font-weight:700}#controls-help{position:fixed;z-index:10;bottom:74px;left:28px;display:grid;grid-template-columns:repeat(3,34px);gap:4px;text-align:center}#controls-help div{padding:7px;background:#173c40d9}#controls-help div:first-child{grid-column:2}#controls-help small{grid-column:1 / -1;margin-top:4px}#alphabet-strip{position:fixed;z-index:10;right:18px;bottom:14px;left:18px;display:flex;justify-content:center;gap:5px;padding:9px;overflow-x:auto;background:#102f32da;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.letter-cell{flex:0 0 32px;height:32px;display:grid;place-items:center;border:2px solid transparent;border-radius:50%;background:#ffffff20;font-weight:800}.letter-cell.target{border-color:#ef2929;background:#fff;color:#152f2d}.letter-cell.collected{color:#132f2c;background:#ffd43b}dialog{padding:28px;border:0;border-radius:22px;color:#17322f;background:#fafbf4;box-shadow:0 30px 100px #0009}dialog::backdrop{background:#061517cc;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px)}.character-options{display:flex;gap:14px}.character-options button,#play-again{display:grid;gap:8px;padding:20px;border:0;border-radius:14px;background:#daf1ee;cursor:pointer;font-weight:800}.character-options span{font-size:45px}#traffic-message{position:fixed;z-index:20;top:92px;left:50%;translate:-50% 0;padding:14px 22px;border-radius:999px;background:#b91c1c;font-weight:800}@media(max-width:850px){#target-card{width:190px}#phone{width:180px}#map-canvas{height:175px}.selectors{display:none}}#alphabet-strip span{display:inline-grid;place-items:center;width:1.55rem;height:1.55rem;margin:.08rem;border-radius:50%;color:#dce8eb;background:#163f46cc;font-size:.78rem;font-weight:800;transition:transform .18s ease,background .18s ease}#alphabet-strip span.collected{color:#052e16;background:#86efac;transform:scale(1.15)}#loading-progress{transition:width .18s ease}#loading-progress.failed{background:#ef4444}#game-canvas{touch-action:none}#controls-help{display:grid!important;grid-template-columns:repeat(3,2.4rem);grid-template-rows:repeat(2,2.4rem) auto;gap:.22rem;align-items:center;justify-items:center}#controls-help>div{display:grid;place-items:center;width:2.4rem;height:2.4rem;margin:0!important}#controls-help>div:nth-child(1){grid-column:2;grid-row:1}#controls-help>div:nth-child(2){grid-column:1;grid-row:2}#controls-help>div:nth-child(3){grid-column:2;grid-row:2}#controls-help>div:nth-child(4){grid-column:3;grid-row:2}#controls-help>small{grid-column:1 / 4;grid-row:3;white-space:nowrap}#map-canvas{width:100%;height:100%}#environment-attribution{position:fixed;z-index:30;right:.7rem;bottom:.35rem;max-width:28rem;padding:.25rem .45rem;border-radius:.3rem;color:#fff;background:#07181bb8;font-size:.62rem;line-height:1.2;pointer-events:none}
