html,body{margin:0;background:#fff;min-width:var(--stage-width);min-height:var(--stage-height)}
body{font-family:Arial,sans-serif}
#stage{position:relative;width:var(--stage-width);height:var(--stage-height);margin:0 auto}
ruffle-player{display:block;width:100%;height:100%}
#gate{position:absolute;inset:0;z-index:20;display:flex;align-items:center;justify-content:center;background:rgba(0,0,0,.78)}
#gate button{font:700 20px Arial;padding:16px 24px;border:1px solid #ddd;background:#111;color:#fff;cursor:pointer;letter-spacing:.4px}
#tailcodes{position:fixed;inset:0;z-index:50;display:none;align-items:center;justify-content:center;background:rgba(0,0,0,.75)}
#tailcodes.open{display:flex}
#tailcodes-shell{position:relative;width:580px;height:620px;max-width:calc(100vw - 44px);max-height:calc(100vh - 44px);background:#fff;border:2px solid #777}
#tailcodes iframe{display:block;width:100%;height:100%;border:0;background:#fff}
#tailcodes-close{position:absolute;right:-17px;top:-17px;width:34px;height:34px;border-radius:50%;border:1px solid #888;background:#111;color:#fff;font:26px/28px Arial;cursor:pointer;z-index:2}
