:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--rec:#ff3b30;color:#fff;background:#000;font-family:system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}[hidden]{display:none!important}html,body{overscroll-behavior:none;height:100%;margin:0;overflow:hidden}canvas{image-rendering:pixelated;image-rendering:crisp-edges}button,.pill{font:inherit;color:inherit;cursor:pointer;touch-action:manipulation;-webkit-tap-highlight-color:transparent}#video,#out{object-fit:cover;width:100vw;height:100dvh;position:fixed;inset:0}#out{background:#000}.status{top:calc(14px + env(safe-area-inset-top));white-space:nowrap;background:#000a;border-radius:999px;padding:6px 14px;font-size:.85rem;position:fixed;left:50%;transform:translate(-50%)}.status:empty{display:none}.start{gap:10px;display:flex;position:fixed;top:72%;left:50%;transform:translate(-50%,-50%)}body.camera .start,body.still .start{display:none}body.still #out{object-fit:contain}body.still .modes{visibility:hidden}.close-still{top:calc(14px + env(safe-area-inset-top));right:calc(14px + env(safe-area-inset-right));color:#fff;background:#0007;border:0;border-radius:50%;width:44px;height:44px;padding:0;font-size:1.6rem;line-height:1;position:fixed}.upload-btn{right:calc(24px + env(safe-area-inset-right));cursor:pointer}.corner{bottom:calc(34px + env(safe-area-inset-bottom));background:#0007;border:2px solid #fff8;border-radius:50%;place-items:center;width:52px;height:52px;padding:0;display:grid;position:fixed}.avatar-btn{left:calc(24px + env(safe-area-inset-left));overflow:hidden}.avatar-btn canvas{object-fit:contain;width:80%;height:80%}.rec-bar{left:50%;bottom:calc(24px + env(safe-area-inset-bottom));flex-direction:column;align-items:center;gap:6px;display:flex;position:fixed;transform:translate(-50%)}.rec-time{font-variant-numeric:tabular-nums;text-shadow:0 1px 3px #000;min-height:1.2em;font-size:.9rem}.rec-btn{background:0 0;border:4px solid #fff;border-radius:50%;place-items:center;width:72px;height:72px;padding:0;display:grid}.rec-btn span{background:var(--rec);border-radius:50%;width:56px;height:56px;transition:all .2s}.rec-btn.on span{border-radius:6px;width:28px;height:28px}.rec-btn:disabled{opacity:.4}.rec-btn.photo span{background:#fff}.rec-btn.photo:active span{transform:scale(.9)}.modes{gap:4px;display:flex}.modes button{color:#fff;letter-spacing:.06em;text-transform:uppercase;opacity:.7;text-shadow:0 1px 3px #000;background:0 0;border:0;border-radius:999px;min-width:64px;min-height:32px;padding:0 10px;font-size:.8rem;font-weight:600}.modes button.on{color:#ffd60a;opacity:1;background:#0007}.modes button:disabled{opacity:.3}.flash{opacity:0;pointer-events:none;background:#fff;position:fixed;inset:0}.flash.on{animation:.35s ease-out flash}@keyframes flash{0%{opacity:.85}to{opacity:0}}.sheet{width:min(560px,100vw);max-height:92dvh;padding:18px 16px calc(18px + env(safe-area-inset-bottom));color:#fff;background:#17151f;border:0;border-radius:20px 20px 0 0;margin:auto auto 0;overflow-y:auto}.sheet::backdrop{background:#0008}.sheet p{margin:0 0 14px;line-height:1.4}.row{flex-wrap:wrap;gap:10px;margin-bottom:14px;display:flex}.pill{color:#000;background:#fff;border:0;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 20px;font-weight:600;text-decoration:none;display:inline-flex}.pill.ghost{color:#fff;background:#ffffff1a}#resultVideo,#resultImage{object-fit:contain;background:#000;border-radius:12px;width:100%;max-height:60dvh;margin-bottom:14px;display:block}.char-title{opacity:.7;text-transform:uppercase;letter-spacing:.05em;margin:0 0 8px;font-size:.8rem;font-weight:700}.char-grid{-webkit-overflow-scrolling:touch;grid-template-rows:repeat(2,auto);grid-auto-flow:column;justify-content:start;gap:8px;margin-bottom:14px;padding-bottom:6px;display:grid;overflow-x:auto}.char{background:#ffffff12;border:2px solid #0000;border-radius:12px;flex-direction:column;align-items:center;gap:4px;width:72px;padding:6px 4px;display:flex}.char.on{border-color:#fff}.char canvas{object-fit:contain;width:60px;height:60px}.char span{text-overflow:ellipsis;white-space:nowrap;max-width:64px;font-size:.7rem;overflow:hidden}
