html,body{background:#05060a;height:100%;margin:0;overflow:hidden}#view{touch-action:none;width:100%;height:100%;display:block;position:fixed;inset:0}#view.locked{pointer-events:none}#hud{box-sizing:border-box;color:#d4d4d8;white-space:pre-wrap;word-break:break-all;z-index:1;background:#0009;max-width:calc(100vw - 16px);max-height:calc(100vh - 16px);padding:6px 8px;font:11px/1.5 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;position:fixed;top:8px;left:8px;overflow:auto}#hud .err{color:#ff8a8a}#hud button{font:inherit;color:#fff;background:#27272a;border:1px solid #52525b;margin-top:6px;padding:4px 8px}#hint{left:50%;bottom:calc(16px + env(safe-area-inset-bottom,0px));color:#d4d4d8;letter-spacing:.04em;white-space:nowrap;pointer-events:none;z-index:1;background:#0000008c;padding:6px 12px;font:12px/1.5 system-ui,sans-serif;position:fixed;transform:translate(-50%)}:root{--z950:#09090b;--z900:#18181b;--z800:#27272a;--z700:#3f3f46;--z600:#52525b;--z500:#71717a;--z400:#a1a1aa;--z300:#d4d4d8;--z200:#e4e4e7;--z100:#f4f4f5;--signal:#39d8ff;--paper:#e9dfc6;--paper-line:#b8a97d;--font-display:"Space Grotesk", system-ui, sans-serif;--font-jp:"Zen Kaku Gothic New", "Hiragino Sans", "Noto Sans JP", system-ui, sans-serif}#ui{z-index:10;pointer-events:none;font-family:var(--font-jp);color:var(--z200);position:fixed;inset:0}#ui [hidden]{display:none!important}#ui button,#ui a{pointer-events:auto}.eyebrow{font:500 11px/1.4 var(--font-display);letter-spacing:.18em;color:var(--z400)}.btn{box-sizing:border-box;min-height:48px;font:500 15px/1 var(--font-jp);letter-spacing:.06em;color:var(--z200);border:1px solid var(--z600);cursor:pointer;pointer-events:auto;background:0 0;border-radius:0;padding:0 20px}.btn:hover:not(:disabled){border-color:var(--z300)}.btn:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.btn:disabled{color:var(--z600);border-color:var(--z800);cursor:default}.btn.primary{color:var(--z950);background:var(--signal);border-color:var(--signal);font-weight:700}.btn.primary:disabled{color:var(--z500);background:var(--z800);border-color:var(--z800)}.actions{gap:8px;display:flex}.actions .btn.primary{flex:1}.actions .btn:not(.primary){flex:0 0 96px}.meta{grid-template-columns:auto 1fr;gap:2px 14px;margin:0;font-size:13px;line-height:1.6;display:grid}.meta dt{color:var(--z400);font:500 12px/1.9 var(--font-jp);letter-spacing:.08em}.meta dd{color:var(--z200);overflow-wrap:anywhere;margin:0}.op{position:absolute;inset:0}.op-cover{pointer-events:none;background:#000;position:absolute;inset:0}.op-card{left:50%;bottom:calc(24px + env(safe-area-inset-bottom,0px));box-sizing:border-box;background:var(--z950);border:1px solid var(--z700);opacity:0;pointer-events:none;width:min(400px,100% - 32px);padding:20px;transition:opacity .6s,transform .6s;position:absolute;transform:translate(-50%,8px)}.op-card.show{opacity:1;pointer-events:auto;transform:translate(-50%)}.op-note{font:500 19px/1.7 var(--font-jp);color:var(--z100);letter-spacing:.04em;margin:10px 0 0}.op-sign{text-align:right;font:400 14px/1.6 var(--font-jp);color:var(--z400);margin:6px 0 0}.op-label{font:400 12px/1.4 var(--font-jp);color:var(--z500);letter-spacing:.06em;margin-top:14px}.op-progress{background:var(--z700);height:1px;margin:8px 0 16px}.op-bar{background:var(--signal);transform-origin:0;height:1px;transition:transform .3s;transform:scaleX(0)}.op-card .btn{width:100%}.tag{left:50%;bottom:calc(12px + env(safe-area-inset-bottom,0px));box-sizing:border-box;border:1px solid var(--z600);width:min(560px,100% - 24px);height:40px;color:var(--z100);pointer-events:auto;cursor:pointer;touch-action:manipulation;background:#09090bc7;align-items:center;gap:12px;padding:0 12px;display:flex;position:absolute;transform:translate(-50%)}.tag-title{min-width:0;font:700 14px/1 var(--font-jp);letter-spacing:.04em;white-space:nowrap;text-overflow:ellipsis;flex:1 1 0;overflow:hidden}.tag-act{border:1px solid var(--z600);font:500 10px/1 var(--font-display);letter-spacing:.1em;color:var(--z400);flex:none;padding:4px 6px}@media (pointer:coarse){.tag{height:44px}}.reticle{box-sizing:content-box;pointer-events:none;border:1px solid #f4f4f5d9;border-radius:50%;width:4px;height:4px;margin:-3px 0 0 -3px;position:absolute;top:50%;left:50%}.detail-hint{top:calc(12px + env(safe-area-inset-top,0px));background:var(--z950);border:1px solid var(--z800);font:400 12px/1.4 var(--font-jp);color:var(--z400);text-align:center;box-sizing:border-box;width:max-content;max-width:calc(100% - 24px);padding:6px 12px;position:absolute;left:50%;transform:translate(-50%)}.detail{box-sizing:border-box;max-height:60vh;padding:16px 16px calc(16px + env(safe-area-inset-bottom,0px));background:var(--z950);border-top:1px solid var(--z700);pointer-events:none;opacity:0;transition:opacity .2s;position:absolute;bottom:0;left:0;right:0;overflow-y:auto}.detail.show{opacity:1;pointer-events:auto}.stage-canvas{touch-action:none;opacity:0;pointer-events:none;background:#0b0b0d;width:100%;height:100%;transition:opacity .2s;display:block;position:absolute;inset:0}.stage-canvas.open{opacity:1;pointer-events:auto}.detail>*{max-width:720px;margin-left:auto;margin-right:auto}.detail-title{font:700 21px/1.4 var(--font-jp);color:var(--z100);margin:0}.detail-sub{font:400 12px/1.5 var(--font-display);color:var(--z500);overflow-wrap:anywhere;margin-top:2px}.detail .meta{border-top:1px solid var(--z800);margin-top:12px;padding-top:10px}.detail .actions{margin-top:14px}.detail .vbar{border-bottom:1px solid var(--z800);max-width:720px;margin:0 auto 12px;padding:0}.detail>.vbar{max-width:720px}.confirm{pointer-events:auto;background:#09090bc7;justify-content:center;align-items:center;padding:16px;display:flex;position:absolute;inset:0}.confirm-card{box-sizing:border-box;background:var(--z950);border:1px solid var(--z600);width:min(360px,100%);padding:24px 20px 20px}.confirm-msg{font:500 20px/1.7 var(--font-jp);color:var(--z100);letter-spacing:.04em;margin:0 0 20px}.end-flash{opacity:0;z-index:2;pointer-events:auto;background:#fff;position:absolute;inset:0}.end{z-index:1;background:var(--z100);color:var(--z900);pointer-events:auto;flex-direction:column;display:flex;position:absolute;inset:0;overflow:hidden}.end-scroll{-webkit-overflow-scrolling:touch;flex:auto;min-height:0;overflow-y:auto}.vframe{background:#0b0b0d;flex:0 0 46vh;position:relative;overflow:hidden}.vframe>.vbar{border-top:1px solid var(--z800);background:#0b0b0d;max-width:none;margin:0;padding:0 max(12px,50% - 360px);position:absolute;bottom:0;left:0;right:0}.vframe .stage-canvas{opacity:1;pointer-events:auto;cursor:grab}.vbar{box-sizing:border-box;justify-content:space-between;align-items:stretch;gap:8px;width:100%;padding:0 12px;display:flex}.vbar-lights{gap:2px;display:flex}.vbar-btn{box-sizing:border-box;min-height:44px;font:500 13px/1 var(--font-jp);letter-spacing:.04em;color:var(--vbar-dim);cursor:pointer;white-space:nowrap;background:0 0;border:0;border-bottom:2px solid #0000;border-radius:0;padding:0 10px}.vbar-btn:hover{color:var(--vbar-fg)}.vbar-btn:focus-visible{outline:2px solid var(--signal);outline-offset:-2px}.vbar-light[aria-pressed=true]{color:var(--vbar-fg);border-bottom-color:var(--signal)}.vbar-reset{border-right:1px solid var(--vbar-line);padding-left:0;padding-right:14px}.vbar-long{display:none}@media (width>=720px){.vbar-short{display:none}.vbar-long{display:inline}.vbar{max-width:720px;margin:0 auto}}.vbar.on-dark{--vbar-fg:var(--z100);--vbar-dim:var(--z400);--vbar-line:var(--z700)}.vbar.on-light{--vbar-fg:var(--z950);--vbar-dim:var(--z500);--vbar-line:var(--z300)}.end-body{max-width:680px;padding:24px 16px calc(48px + env(safe-area-inset-bottom,0px));box-sizing:border-box;margin:0 auto}.end .eyebrow{color:var(--z500)}.end-title{font:700 28px/1.35 var(--font-jp);color:var(--z950);margin:6px 0 0}.end-sub{font:400 13px/1.5 var(--font-display);color:var(--z500);overflow-wrap:anywhere;margin-top:4px}.end-meta{border-top:1px solid var(--z300);margin-top:18px;padding-top:14px}.end-meta dt{color:var(--z500)}.end-meta dd{color:var(--z900)}.end-link{font:500 14px/1.5 var(--font-jp);color:var(--z900);border-bottom:2px solid var(--signal);margin-top:14px;padding:6px 0;text-decoration:none;display:inline-block}.end-sec{border-top:1px solid var(--z300);margin-top:28px;padding-top:14px}.end-sec h3{font:700 13px/1.4 var(--font-jp);letter-spacing:.1em;color:var(--z500);margin:0 0 8px}.end-sec p{max-width:38em;font:400 15px/1.9 var(--font-jp);color:var(--z900);white-space:pre-wrap;overflow-wrap:anywhere;line-break:strict;margin:0}.end-sources{max-width:38em;margin:0;padding:0;list-style:none}.end-sources li{border-bottom:1px solid var(--z300);font:400 14px/1.7 var(--font-jp);padding:6px 0}.end-sources li:last-child{border-bottom:0}.end-sources a{color:var(--z900);border-bottom:1px solid var(--z500);overflow-wrap:anywhere;text-decoration:none}.end-sources a:hover{border-bottom-color:var(--signal)}.end-sec.thief p{border-left:3px solid var(--signal);padding-left:14px}.end-actions{gap:8px;margin-top:24px;display:flex}.end-again{flex:1}.end-home{color:var(--z900);border-color:var(--z400);flex:none;justify-content:center;align-items:center;text-decoration:none;display:inline-flex}.end-home:hover:not(:disabled){border-color:var(--z900)}.link-btn{font:400 13px/1.5 var(--font-jp);letter-spacing:.04em;color:var(--z300);border:0;border-bottom:1px solid var(--z600);cursor:pointer;pointer-events:auto;background:0 0;border-radius:0;padding:10px 0;display:inline-block}.link-btn:hover{border-bottom-color:var(--signal)}.link-btn:focus-visible{outline:2px solid var(--signal);outline-offset:2px}.link-btn.on-light{color:var(--z900);border-bottom-color:var(--z500);margin-top:28px}.end .btn.primary{color:var(--z950)}.rv{z-index:1;background:var(--z100);color:var(--z900);pointer-events:auto;flex-direction:column;transition:opacity .4s;display:flex;position:absolute;inset:0}.rv-scroll{cursor:pointer;-webkit-overflow-scrolling:touch;flex:auto;overflow-y:auto}.rv-body{box-sizing:border-box;max-width:31em;padding:24px 20px calc(48px + env(safe-area-inset-bottom,0px));margin:0 auto;font-size:18px}.rv .eyebrow{color:var(--z500)}.rv-title{border-bottom:1px solid var(--z300);font:700 24px/1.5 var(--font-jp);color:var(--z950);margin:8px 0 0;padding-bottom:20px}.rv-text{font:400 1em/2 var(--font-jp);color:var(--z900);line-break:strict;overflow-wrap:anywhere;margin:28px 0 0}.rv-step{opacity:0;transition:opacity .7s}.rv-step.on{opacity:1}.rv-rule{border-top:1px solid var(--z300);margin-top:32px}.rv-rec{padding-top:20px}.rv-rec h3{font:700 13px/1.4 var(--font-jp);letter-spacing:.1em;color:var(--z500);margin:0 0 8px}.rv-rec p{font:400 1em/2 var(--font-jp);color:var(--z900);line-break:strict;overflow-wrap:anywhere;margin:0}.rv-more{width:100%;color:var(--z950);margin-top:40px;display:block}#ui .rv-more:not(.on){pointer-events:none}@media (width<=480px){.rv-body{padding-top:20px;font-size:17px}.rv-title{font-size:22px}.op-note{font-size:18px}.end-title{font-size:24px}}#hint{top:calc(12px + env(safe-area-inset-top,0px));box-sizing:border-box;white-space:normal;text-align:center;width:max-content;max-width:calc(100% - 24px);bottom:auto}.op-disclaimer{font:400 11px/1.7 var(--font-jp);color:var(--z500);letter-spacing:.02em;margin:14px 0 2px}.cr{z-index:20;background:var(--z950);color:var(--z200);pointer-events:auto;flex-direction:column;display:flex;position:absolute;inset:0}.cr-head{padding:8px 16px;padding-top:calc(8px + env(safe-area-inset-top,0px));border-bottom:1px solid var(--z700);flex:none;justify-content:space-between;align-items:center;gap:12px;display:flex}.cr-head-title{font:700 15px/1.4 var(--font-jp);letter-spacing:.06em;color:var(--z100)}.cr-close{min-height:40px;padding:0 16px;font-size:14px}.cr-body{-webkit-overflow-scrolling:touch;box-sizing:border-box;width:100%;max-width:40em;min-height:0;padding:8px 20px calc(48px + env(safe-area-inset-bottom,0px));flex:auto;margin:0 auto;overflow-y:auto}.cr-sec{border-top:1px solid var(--z700);margin-top:28px;padding-top:16px}.cr-sec:first-child{border-top:0;margin-top:16px}.cr-sec h3{font:700 14px/1.5 var(--font-jp);letter-spacing:.08em;color:var(--z100);margin:0 0 10px}.cr-sec h4{font:500 13px/1.6 var(--font-jp);color:var(--z300);margin:18px 0 4px}.cr-sec p{font:400 14px/1.9 var(--font-jp);color:var(--z200);overflow-wrap:anywhere;margin:0 0 10px}.cr-notice p:first-of-type{color:var(--z100);font-weight:500}.cr-list{margin:0;padding:0;list-style:none}.cr-list li{font:400 13px/1.7 var(--font-jp);color:var(--z200);overflow-wrap:anywhere;padding:4px 0}.cr-list a,.cr-sec a{color:var(--z100);border-bottom:1px solid var(--z500);text-decoration:none}.cr-list a:hover{border-bottom-color:var(--signal)}.cr-dim{color:var(--z500)}
