html,body{touch-action:none;-webkit-user-select:none;user-select:none;background:#e9f3ef;height:100%;margin:0;font-family:Pretendard,-apple-system,sans-serif;overflow:hidden}canvas{display:block;position:fixed;inset:0}.tv{background:#0b0d10;border-radius:3px;place-items:center;display:grid;position:fixed;overflow:hidden}.tv iframe{border:0;width:100%;height:100%}.tv form{color:#c9d1d9;text-align:center;flex-direction:column;align-items:center;gap:8px;padding:12px;font-size:13px;display:flex}.tv input{color:#eef;width:min(320px,82%);font:inherit;-webkit-user-select:text;user-select:text;background:#161a1f;border:1px solid #3a4048;border-radius:10px;padding:9px 12px}.tv button{color:#fff;font:inherit;cursor:pointer;background:#ff4d4d;border:0;border-radius:999px;padding:7px 14px;font-weight:700}.hud{left:max(16px, env(safe-area-inset-left));top:max(14px, env(safe-area-inset-top));pointer-events:none;flex-wrap:wrap;gap:8px;display:flex;position:fixed}.chip{color:#2b2622;background:#fff;border-radius:999px;padding:7px 12px;font-size:13px;font-weight:700;box-shadow:0 2px 10px #0000002e}.ticket{right:max(16px, env(safe-area-inset-right));top:max(14px, env(safe-area-inset-top));color:#2b2622;pointer-events:none;background:#fffdf5;border-top:6px solid #34c38f;width:150px;padding:10px 12px 12px;font-size:13px;position:fixed;transform:rotate(2deg);box-shadow:0 6px 18px #00000047}.ticket b{margin-top:2px;font-size:18px;display:block}.ticket .bar{background:#eee3cc;border-radius:3px;height:6px;margin-top:8px;overflow:hidden}.ticket .bar i{background:#34c38f;width:0;height:100%;transition:width .3s;display:block}.tools{right:max(16px, env(safe-area-inset-right));bottom:max(14px, env(safe-area-inset-bottom));gap:8px;display:flex;position:fixed}.tools button{color:#2b2622;font:inherit;cursor:pointer;background:#fffffff2;border:0;border-radius:999px;padding:8px 12px;font-size:13px;font-weight:700;box-shadow:0 2px 10px #00000026}.tools button[hidden]{display:none}.hint{left:50%;bottom:max(16px, env(safe-area-inset-bottom));color:#fff;pointer-events:none;text-align:center;background:#141210c7;border-radius:999px;max-width:calc(100vw - 32px);padding:8px 14px;font-size:13px;position:fixed;transform:translate(-50%)}.toast{color:#fff;text-shadow:0 3px #b5651d,0 8px 22px #00000073;opacity:0;pointer-events:none;white-space:nowrap;font-size:38px;font-weight:900;transition:opacity .18s,transform .28s cubic-bezier(.3,1.6,.5,1);position:fixed;top:46%;left:50%;transform:translate(-50%,-50%)scale(.7)}.toast.on{opacity:1;transform:translate(-50%,-50%)scale(1)}.pop{color:#fff;text-shadow:0 2px #9a5a1a,0 4px 10px #00000059;pointer-events:none;font-size:20px;font-weight:900;animation:.7s ease-out forwards pop;position:fixed}@keyframes pop{0%{opacity:1;transform:translate(-50%,-50%)scale(.6)}30%{transform:translate(-50%,-80%)scale(1.15)}to{opacity:0;transform:translate(-50%,-160%)scale(1)}}@media (width<=600px){.ticket{width:120px;font-size:12px}.ticket b{font-size:15px}.hint{bottom:calc(max(14px, env(safe-area-inset-bottom)) + 44px);font-size:12px}}@media (prefers-reduced-motion:reduce){.pop{animation-duration:10ms}.toast{transition:none}}
