@font-face{font-family:NeueHaasUnica;src:url(/NeueHaasUnicaPro.woff2) format("woff2"),url(/NeueHaasUnicaPro.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:NeueHaasUnica;src:url(/NeueHaasUnicaProLight.woff2) format("woff2"),url(/NeueHaasUnicaProLight.woff) format("woff");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:NeueHaasUnica;src:url(/NeueHaasUnicaProMedium.woff2) format("woff2"),url(/NeueHaasUnicaProMedium.woff) format("woff");font-weight:500;font-style:normal;font-display:swap}@font-face{font-family:NeueHaasUnica;src:url(/NeueHaasUnicaW06Bold.woff2) format("woff2"),url(/NeueHaasUnicaW06Bold.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}@font-face{font-family:NeueHaasUnica;src:url(/NeueHaasUnicaW06Heavy.woff2) format("woff2"),url(/NeueHaasUnicaW06Heavy.woff) format("woff");font-weight:800;font-style:normal;font-display:swap}@font-face{font-family:NeueHaasUnica;src:url(/NeueHaasUnicaW06Thin.woff2) format("woff2"),url(/NeueHaasUnicaW06Thin.woff) format("woff");font-weight:100;font-style:normal;font-display:swap}:root{font-family:NeueHaasUnica,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;--bg-color: #f0f0f0;--text-color: #1a1a1a;--primary-color: #000}body{margin:0;background-color:var(--bg-color);color:var(--text-color);display:flex;justify-content:center;align-items:center;height:100vh;overflow:hidden;user-select:none;-webkit-user-select:none;position:relative}body:before{content:"";position:absolute;top:-50%;left:-50%;width:200%;height:200%;background:radial-gradient(circle at center,#e6e6fa26,#c8d2ff1a,#f0f0f000 50%);animation:rotateGradient 20s linear infinite;pointer-events:none}@keyframes rotateGradient{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.app-container{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1}.app-container.stage2{background:#f0f0f0}.bg-video{position:fixed;inset:0;width:100%;height:100%;object-fit:cover;opacity:.001;transition:opacity .4s linear;z-index:0;pointer-events:none;-webkit-transform:translateZ(0);transform:translateZ(0)}.bg-darken{position:fixed;inset:0;background:#000;opacity:0;transition:opacity .3s linear;z-index:0;pointer-events:none}.clock-container{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:300px;height:300px;transition:transform .3s cubic-bezier(.175,.885,.32,1.275);cursor:pointer}.clock-container.pause-anim-a,.clock-container.pause-anim-b{animation:pausePulse .35s ease}.clock-container.paused{transform:translate(-50%,-50%) scale(.5);transition:transform .35s cubic-bezier(.4,0,.2,1)}.clock-container.paused .circle-bg,.clock-container.vocal-mode.paused .circle-bg{stroke:#999!important;stroke-width:3;transition:stroke .3s ease,stroke-width .3s ease}.leaning-active{transform:translate(-50%,-50%)}.circle-bg{fill:none;stroke:#d0d0d0;stroke-width:2;transition:stroke .3s ease,filter 1.5s ease-in-out}.clock-container.initial .circle-bg{stroke-dasharray:6 10;stroke-linecap:round}.clock-container.active .circle-bg{stroke:#666;stroke-dasharray:none}.clock-container.loading .circle-bg{stroke:#666;stroke-dasharray:6 10;stroke-linecap:round;animation:dashBlink .9s linear infinite,dashSpin 2s linear infinite}.clock-container:hover .circle-bg{stroke:#999}.clock-container.vocal-mode .circle-bg{stroke:#ededed66;filter:none}@keyframes dashBlink{0%,to{stroke-dashoffset:0;opacity:1}50%{stroke-dashoffset:10;opacity:.35}}@keyframes dashSpin{0%{stroke-dashoffset:0}to{stroke-dashoffset:-64}}@keyframes pausePulse{0%{transform:translate(-50%,-50%) scale(.96)}50%{transform:translate(-50%,-50%) scale(1.05)}to{transform:translate(-50%,-50%) scale(1)}}.liquid-layer{transition:fill 1.5s ease-in-out,filter 1.5s ease-in-out}.layer-1{fill:#000}.layer-2{fill:#0009}.layer-3{fill:#0000004d}.vocal-mode .layer-1{fill:#fff;opacity:.9;filter:none}.vocal-mode .layer-2{fill:#fff;opacity:.55;filter:none}.vocal-mode .layer-3{fill:#fff;opacity:.3}.controls-bottom,.playback-controls,.btn-control,.btn-start,.status-text{display:none}.input-indicator{position:absolute;top:30px;width:8px;height:8px;border-radius:50%;background:#ccc;transition:all .2s}.input-indicator.active{background:#1a1a1a;transform:scale(1.5)}.error-msg{position:absolute;bottom:20px;color:#e74c3c;font-size:12px}.music-selector,.control-buttons,.icon-btn,.loading-progress{display:none}
