:root{--red:#e61a27;--red-neon:#f23;--ink:#f5f5f5;--muted:#c9c9c9;--face-w:79%;--face-cx:49%;--face-cy:47%;--face-mask:radial-gradient(ellipse 30% 82% at 50% 42%, #000 86%, #0000 100%)}*{box-sizing:border-box;margin:0;padding:0}html,body{height:100%;color:var(--ink);background:#000;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Inter,system-ui,sans-serif;overflow:hidden}.stageWrap{background:#000;justify-content:center;align-items:center;width:100vw;height:100dvh;display:flex}.scene{aspect-ratio:2000/1125;background:#000 50%/cover no-repeat;width:min(100vw,177.778dvh);max-height:100dvh;position:relative;overflow:hidden}.scene--portrait{aspect-ratio:1125/2000;width:min(100vw,56.25dvh)}.bear-canvas{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.bear-video{width:var(--face-w);aspect-ratio:1;left:var(--face-cx);top:var(--face-cy);object-fit:cover;pointer-events:none;filter:url(#bear-sharpen)contrast(1.08)saturate(1.06);position:absolute;transform:translate(-50%,-50%);-webkit-mask-image:url(/bear-matte.png);mask-image:url(/bear-matte.png);-webkit-mask-position:50%;mask-position:50%;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}.anam-video{object-fit:contain;mix-blend-mode:screen;filter:url(#anam-sharpen)contrast(1.03)saturate(1.03);pointer-events:none;background:0 0;width:100%;height:100%;position:absolute;inset:0}.spatius-stage{background:#000;position:absolute;inset:0}.wait-msg{color:#fff;text-align:center;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#0000008c;border-radius:14px;max-width:min(520px,86vw);margin:0 auto 10px;padding:10px 16px;font-size:15px;line-height:1.45}.lock{z-index:10;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#000000b8;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.lock-panel{background:#0c0c0ce6;border:1px solid #ffffff1f;border-radius:16px;flex-direction:column;align-items:center;gap:12px;padding:28px 32px;display:flex}.lock-title{color:#fff;letter-spacing:.08em;text-transform:uppercase;opacity:.85;font-size:15px}.lock-input{color:#fff;text-align:center;background:#ffffff14;border:1px solid #ffffff40;border-radius:10px;outline:none;width:220px;padding:10px 14px;font-size:15px}.lock-input:focus{border-color:#ffffff8c}.lock-error{color:#ff6b6b;font-size:13px}.legend{color:#ffffffbf;text-align:center;text-wrap:balance;-webkit-user-select:none;user-select:none;margin-top:6px;font-size:13px}.engine-tag{letter-spacing:.14em;color:#ffffff73;text-align:center;-webkit-user-select:none;user-select:none;margin-bottom:4px;font-size:10px}.hud{z-index:6;flex-direction:column;align-items:center;gap:10px;display:flex;position:absolute;bottom:clamp(16px,3.5vh,34px);left:50%;transform:translate(-50%)}.status{letter-spacing:.16em;text-transform:uppercase;color:var(--muted);text-shadow:0 1px 8px #000000e6;min-height:15px;font-size:12px;transition:color .2s}.status--listening{color:#6ee7ff}.status--speaking{color:var(--red-neon)}.status--connecting{color:#ffd166}.status--error{color:#ff5c6c}.btn{cursor:pointer;letter-spacing:.03em;color:#fff;border:none;border-radius:999px;padding:13px 32px;font-size:16px;font-weight:700;transition:transform .12s,box-shadow .2s}.btn:active{transform:scale(.97)}.btn--go{background:linear-gradient(180deg, var(--red-neon), var(--red));box-shadow:0 0 34px #e61a2799}.btn--go:hover{box-shadow:0 0 52px #e61a27e6}.btn--stop{background:#121212d9;box-shadow:0 0 0 1px #ffffff2e}.debug{color:#8fdcff;text-align:center;background:#0009;border-radius:6px;max-width:60vw;margin-top:8px;padding:4px 10px;font-family:ui-monospace,Menlo,monospace;font-size:12px}
