.stage{position:fixed;top:0;right:0;bottom:0;left:0;overflow:hidden;background:var(--stage-bg);cursor:default}.stage-top-right{position:fixed;top:22px;right:28px;z-index:60;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.app-info{position:relative}.app-info__trigger{display:flex;align-items:center;justify-content:center;width:34px;height:34px;padding:0;border:1px solid rgba(0,0,0,.12);border-radius:999px;background:#ffffffb8;color:#00000080;cursor:pointer;box-shadow:0 2px 10px #00000014;transition:background .15s,color .15s,transform .15s}.app-info__trigger svg{width:20px;height:20px}.app-info__trigger:hover{background:#fffffff2;color:#000000b8;transform:scale(1.04)}.app-info__panel{position:absolute;top:calc(100% + 8px);right:0;width:min(320px,calc(100vw - 56px));max-height:min(70vh,420px);overflow-y:auto;padding:14px 16px 16px;border:1px solid rgba(0,0,0,.1);border-radius:12px;background:#fffffff5;box-shadow:0 12px 40px #00000024;text-align:left;pointer-events:auto}.app-info__close{position:absolute;top:8px;right:10px;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:#00000073;font-size:18px;line-height:1;padding:4px 6px;cursor:pointer;border-radius:6px}.app-info__close:hover{background:#0000000f;color:#000000b3}.app-info__section{margin:0}.app-info__section+.app-info__section{margin-top:14px;padding-top:14px;border-top:1px solid rgba(0,0,0,.08)}.app-info__heading{margin:0 0 8px;font-size:10px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:#00000073}.app-info__list{margin:0;padding-left:1.1em;font-size:11px;line-height:1.5;color:#000000c7}.app-info__list li+li{margin-top:8px}.app-info__section--privacy p{margin:0;font-size:11px;line-height:1.5;color:#000000b8}.app-info__section--privacy p+p{margin-top:6px}.app-info__en{display:block;margin-top:3px;font-size:10px;line-height:1.45;color:#0000006b}.hud{position:absolute;z-index:50;font-size:11px;letter-spacing:.04em;color:#000000a6;text-transform:lowercase;pointer-events:none;-webkit-user-select:none;user-select:none}.hud-bottom{bottom:22px;right:28px;left:auto;display:flex;justify-content:flex-end;align-items:flex-end;pointer-events:none}.hud-right{pointer-events:auto}.hud-btn{pointer-events:auto;-webkit-appearance:none;-moz-appearance:none;appearance:none;background:#0000000f;border:1px solid rgba(0,0,0,.15);color:inherit;font:inherit;font-size:10px;padding:6px 12px;cursor:pointer;text-transform:lowercase;letter-spacing:.06em}.hud-btn:hover{background:#0000001f}.results-controls{display:flex;flex-direction:column;align-items:stretch;gap:8px;min-width:148px}.quality-hud{display:flex;flex-direction:column;gap:6px;min-width:168px;padding:10px 14px;background:#ffffffe0;border:1px solid rgba(0,0,0,.12);border-radius:12px;box-shadow:0 4px 16px #0000001a}.quality-hud--busy{opacity:.72}.quality-hud__label{display:flex;justify-content:space-between;align-items:baseline;font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:lowercase;color:#000000b8}.quality-hud__value{font-variant-numeric:tabular-nums;color:#00000080}.quality-hud__slider{width:100%;height:4px;margin:0;accent-color:rgba(0,0,0,.65);cursor:pointer}.quality-hud__hint{font-size:9px;letter-spacing:.06em;text-transform:lowercase;color:#0000006b}.face-wrap{position:absolute;left:50%;top:calc(50% + var(--rive-offset-y));transform:translate(-50%,-50%);z-index:10;pointer-events:none}.face-wrap--spitting .rive-stage{background:transparent}.rive-stage{position:relative;width:var(--rive-w);height:var(--rive-h);background:var(--stage-bg);overflow:visible;pointer-events:auto}.rive-stage .character{width:100%;height:100%;display:block}.rive-stage canvas{width:100%;height:100%;display:block}.rive-error{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:5;font-size:11px;color:#000000bf;background:#ffffffd9;padding:8px 12px;border-radius:4px;pointer-events:none}.spit-img.falling{z-index:40;pointer-events:none;will-change:transform,left,top;transition:none!important}.spit-img.falling img{animation:none;width:100%;height:auto}.thumbnail-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;pointer-events:none}.thumbnail-layer .spit-img,.thumbnail-layer .thumbnail-item{pointer-events:auto}.dismiss-btn{position:static;z-index:auto;-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid rgba(0,0,0,.2);background:#ffffffe0;color:#000c;font:inherit;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:lowercase;padding:8px 16px;border-radius:999px;cursor:pointer;box-shadow:0 4px 16px #0000001f;transition:background .15s,transform .15s}.dismiss-btn:hover{background:#fff;transform:scale(1.04)}.dismiss-btn:active{transform:scale(.97)}.spit-img{position:absolute;z-index:30;width:80px;cursor:pointer;transition:left .55s cubic-bezier(.2,.8,.3,1.2),top .55s cubic-bezier(.2,.8,.3,1.2),transform .55s cubic-bezier(.2,.8,.3,1.2);will-change:transform,left,top;-webkit-user-select:none;user-select:none}.spit-img img{width:80px;height:80px;object-fit:cover;border-radius:3px;box-shadow:0 8px 24px #00000040,0 1px #fff9 inset;border:4px solid #fff;display:block}.spit-img.arrived img{animation:spitWobble .4s cubic-bezier(.4,1.5,.5,1)}@keyframes spitWobble{0%{transform:scale(.4) rotate(-15deg)}60%{transform:scale(1.15) rotate(8deg)}to{transform:scale(1) rotate(0)}}.spit-img.transparent img{background-image:linear-gradient(45deg,#ccc 25%,transparent 25%),linear-gradient(-45deg,#ccc 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#ccc 75%),linear-gradient(-45deg,transparent 75%,#ccc 75%);background-size:12px 12px;background-position:0 0,0 6px,6px -6px,-6px 0;background-color:#fff}.spit-img:hover img{box-shadow:0 12px 32px #00000059,0 0 0 2px #0006}.spit-label{position:absolute;bottom:-22px;left:0;right:0;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.06em;color:#000000bf;background:#ffffffd9;padding:2px 6px;border-radius:2px}.spit-format{font-weight:700}.spit-size{opacity:.6;font-variant-numeric:tabular-nums}.file-input{position:fixed;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}*,*:before,*:after{box-sizing:border-box}:root{--stage-bg: #6096de;--rive-w: 900px;--rive-h: 600px;--rive-offset-y: 50px}html,body{margin:0;padding:0;height:100%;overflow:hidden;background:var(--stage-bg);font-family:JetBrains Mono,ui-monospace,Menlo,monospace;color:#1a1a1a}#root{height:100%;background:var(--stage-bg)}
