/* Zybloc Web — browser-only styles (overlays, focus ring, keyboard cursor, menu web bar, landscape hint) */
:focus{outline:none}
:focus-visible{outline:3px solid #ffe36b!important;outline-offset:3px;box-shadow:0 0 0 6px rgba(27,31,59,.55)!important}
.zw-ov{position:fixed;inset:0;z-index:100;display:flex;align-items:center;justify-content:center;background:rgba(22,14,64,.78);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);padding:max(16px,env(safe-area-inset-top)) 16px max(16px,env(safe-area-inset-bottom));box-sizing:border-box;font-family:ZyUI,ZyText,system-ui,sans-serif;touch-action:auto}
.zw-card{background:linear-gradient(#ffffff,#eef0ff);color:#262a55;border-radius:22px;padding:24px 22px 20px;max-width:360px;width:100%;text-align:center;box-shadow:0 8px 0 rgba(20,14,70,.35),0 20px 50px rgba(0,0,0,.35)}
.zw-card h2{margin:0 0 8px;font:800 24px ZyDisp,ZyBtn,ZyUI,system-ui,sans-serif;letter-spacing:.3px;color:#2b2f6b}
.zw-card p{margin:0 0 18px;font-size:16px;line-height:1.5;color:#4b4f7d}
.zw-row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap}
.zw-row button{min-width:120px;font-family:ZyBtn,ZyUI,system-ui,sans-serif}
.zw-row button.b{background:linear-gradient(#6f8cff,#4a5ff0);color:#fff;box-shadow:0 4px 0 #2c39a8}
.zw-i{width:18px;height:18px;vertical-align:-3px}
.zw-keys{display:inline-block;text-align:left;line-height:2.1}
kbd{display:inline-block;min-width:22px;padding:0 6px;margin:0 2px;border-radius:7px;background:#fff;border:1px solid #c9cdf2;box-shadow:0 2px 0 #c9cdf2;font:700 13px/22px ZyUI,system-ui,sans-serif;text-align:center;color:#2b2f6b}
#zw-bar{display:flex;gap:12px;justify-content:center;margin:14px auto 4px}
#zw-bar .zw-ib{width:46px;height:46px;padding:0;border-radius:14px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,.16);color:#fff;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.28),0 3px 0 rgba(20,14,70,.35)}
#zw-bar .zw-ib:hover{background:rgba(255,255,255,.26)}
#zw-bar .zw-ib svg{width:24px;height:24px}
#zw-inst{display:none!important}
.zw-can-install #zw-inst{display:flex!important}
#zw-bar.standalone #zw-inst{display:none!important}
@media (hover:none){#zw-keys{display:none!important}}
#zw-kb{position:fixed;inset:0;pointer-events:none;z-index:6;display:none}
#zw-kb i{position:absolute;box-sizing:border-box;border-radius:22%;border:3px solid #fff;background:rgba(255,255,255,.22);box-shadow:0 0 0 2px rgba(27,31,59,.5),0 0 14px rgba(255,255,255,.55)}
#zw-kb i.no{border-color:#ff6b6b;background:rgba(255,80,80,.18)}
#zw-kb i.b{border-color:#ffb627;background:rgba(255,160,40,.25)}
#zw-tray{position:absolute;border-radius:18px;border:3px solid #ffe36b;box-shadow:0 0 0 2px rgba(27,31,59,.45),0 0 16px rgba(255,227,107,.5)}
.zw-sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}
#zw-rot{display:none}
@media (orientation:landscape) and (max-height:500px) and (pointer:coarse){
  #zw-rot{display:flex;position:fixed;inset:0;z-index:90;flex-direction:column;align-items:center;justify-content:center;gap:14px;background:linear-gradient(165deg,#3c55e6,#6a3cd2);color:#fff;font:700 20px ZyUI,system-ui,sans-serif;text-align:center;padding:20px}
  #zw-rot svg{width:64px;height:64px}
}

/* lock the play shell to the viewport (was 1px scrollable) */
html{overflow:hidden;height:100%}
