*{box-sizing:border-box}html,body{color:#fff;-webkit-user-select:none;user-select:none;background:#111;height:100%;margin:0;font-family:Helvetica Neue,Helvetica,Arial,sans-serif;overflow:hidden}#app,#app canvas{width:100%;height:100%;display:block;position:fixed;inset:0}.hidden{display:none!important}#hud{pointer-events:none;position:fixed;inset:0}#location{text-shadow:0 1px 3px #000c;position:absolute;bottom:16px;left:18px}#street{letter-spacing:.02em;font-size:22px;font-weight:700}#district{opacity:.85;margin-top:2px;font-size:13px}#caption{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0a0a0e9e;border-left:4px solid #f0b43c;border-radius:4px;max-width:min(560px,80vw);padding:10px 18px;position:absolute;bottom:60px;left:50%;transform:translate(-50%)}#caption-title{font-size:17px;font-weight:700}#caption-text{opacity:.88;margin-top:3px;font-size:13px;line-height:1.35}#minimap{background:#2a2a2a;border:2px solid #ffffffb3;border-radius:50%;width:180px;height:180px;position:absolute;top:16px;right:16px;box-shadow:0 2px 10px #00000080}#crosshair{background:#ffffffbf;border-radius:50%;width:4px;height:4px;margin:-2px 0 0 -2px;position:absolute;top:50%;left:50%;box-shadow:0 0 2px #000c}#hint{opacity:0;background:#00000080;border-radius:3px;padding:4px 10px;font-size:14px;transition:opacity .25s;position:absolute;top:calc(50% + 28px);left:50%;transform:translate(-50%)}#hint.show{opacity:1}#intro{z-index:10;background:radial-gradient(#140c088c,#000000d1);justify-content:center;align-items:center;display:flex;position:fixed;inset:0}#intro .panel{background:#18100ce0;border:1px solid #f0b43c73;border-radius:8px;width:min(560px,92vw);padding:28px 32px 22px;box-shadow:0 10px 40px #0009}#intro h1{color:#f4c25a;margin:0;font-family:Georgia,Times New Roman,serif;font-size:40px}#intro .sub{opacity:.8;letter-spacing:.04em;margin:4px 0 12px;font-size:14px}#intro .blurb{opacity:.9;font-size:14px;line-height:1.5}#intro .note{opacity:.7;margin:12px 0 0;font-size:12px}#loading{color:#f4c25a;margin:18px 0;font-size:15px}#start{color:#1b120b;cursor:pointer;background:#f4c25a;border:none;border-radius:5px;width:100%;margin:18px 0;padding:12px;font-size:17px;font-weight:700;display:block}#start:hover{background:#ffd57a}.keys{border-collapse:collapse;width:100%;font-size:13px}.keys td{border-bottom:1px solid #ffffff14;padding:3px 0}.keys td:first-child{color:#f4c25a;width:48%;font-weight:600}#menu-card{z-index:5;background:#1a0c0c;border:2px solid #c9a14a;border-radius:6px;width:min(520px,90vw);padding:24px 28px;font-family:Georgia,serif;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 40px #000000b3}#menu-card h2{color:#e8c064;text-align:center;margin:0 0 4px;font-size:26px}#menu-card .tag{text-align:center;opacity:.75;margin-bottom:14px;font-size:13px}#menu-card h3{color:#e8c064;letter-spacing:.08em;margin:14px 0 4px;font-size:15px}#menu-card .row{justify-content:space-between;padding:2px 0;font-size:14px;display:flex}#menu-card .foot{opacity:.7;text-align:center;margin-top:16px;font-family:Helvetica,Arial,sans-serif;font-size:12px}#touch-stick{z-index:3;background:#ffffff14;border:2px solid #fff6;border-radius:50%;width:120px;height:120px;position:fixed;bottom:60px;left:30px}#touch-knob{background:#ffffff80;border-radius:50%;width:40px;height:40px;position:absolute;top:40px;left:40px}
