:root{color:#fff;font-synthesis:none;text-rendering:optimizelegibility;--tracking:#c8fa45;--success:23 151 88;background:#090c0d;font-family:Pretendard,Noto Sans KR,Apple SD Gothic Neo,Malgun Gothic,Segoe UI,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;overflow:hidden}button{font:inherit;touch-action:manipulation}button:focus-visible{outline-offset:4px;outline:3px solid #fff}.sr-only{clip:rect(0, 0, 0, 0);clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.app{isolation:isolate;background:#090c0d;width:100dvw;height:100dvh;position:relative;overflow:hidden}.camera-backdrop,.camera-feed,.camera-feed video,.camera-feed canvas,.depth-feedback{position:absolute;inset:0}.camera-backdrop{z-index:0;background:#090c0d;place-items:center;display:grid;overflow:hidden}.camera-feed{opacity:0;background:#090c0d;place-items:center;transition:opacity .24s;display:grid;overflow:hidden}.camera-feed[data-visible=true]{opacity:1}.camera-feed video,.camera-feed canvas{object-fit:contain;object-position:center;width:100%;height:100%;transform:scaleX(-1)}.camera-feed video{background:#090c0d}.camera-feed canvas{z-index:1;pointer-events:none}.depth-feedback{z-index:1;pointer-events:none;opacity:0;background:linear-gradient(90deg, rgb(var(--success) / 52%) 0%, rgb(var(--success) / 14%) 12%, transparent 31%, transparent 69%, rgb(var(--success) / 14%) 88%, rgb(var(--success) / 52%) 100%), linear-gradient(180deg, rgb(var(--success) / 36%) 0%, transparent 24%, transparent 72%, rgb(var(--success) / 44%) 100%);transition:opacity .32s}.app--depth-reached .depth-feedback{opacity:.82;animation:1.15s ease-in-out infinite depth-breathe}.count-hud{z-index:2;top:max(20px, calc(env(safe-area-inset-top) + 12px));right:max(28px, calc(env(safe-area-inset-right) + 20px));color:#fff;font-variant-numeric:tabular-nums;letter-spacing:-.075em;text-align:right;text-shadow:0 2px 18px #00000085;min-width:1ch;margin:0;font-family:Arial,Helvetica,sans-serif;font-size:clamp(88px,12vw,184px);font-weight:500;line-height:.86;animation:.22s ease-out count-pop;display:block;position:absolute}.camera-button{z-index:3;left:50%;bottom:max(24px, calc(env(safe-area-inset-bottom) + 18px));color:#fff;-webkit-backdrop-filter:blur(12px);cursor:pointer;letter-spacing:-.025em;background:#050708a8;border:1.5px solid #ffffffdb;border-radius:999px;min-width:176px;min-height:56px;padding:0 28px;font-size:17px;font-weight:700;transition:background-color .16s,border-color .16s,opacity .16s;position:absolute;transform:translate(-50%);box-shadow:0 8px 28px #0003}.camera-button:hover:not(:disabled){background:#050708d1;border-color:#fff}.camera-button:active:not(:disabled){background:#ffffff2e}.camera-button--preparing{color:#ffffffc7;border-color:#ffffff7a}.camera-button:disabled{cursor:wait}.camera-error{z-index:3;color:#ffffffdb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);text-align:center;background:#050708c2;border:1px solid #ffffff38;border-radius:12px;width:min(86vw,480px);margin:0;padding:13px 16px;font-size:14px;font-weight:600;line-height:1.5;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes depth-breathe{0%,to{opacity:.5}50%{opacity:.9}}@keyframes count-pop{0%{opacity:.5;transform:scale(.88)}to{opacity:1;transform:scale(1)}}@media (width<=700px){.count-hud{top:max(18px, calc(env(safe-area-inset-top) + 10px));right:max(20px, calc(env(safe-area-inset-right) + 14px));font-size:clamp(76px,22vw,112px)}.camera-button{bottom:max(20px, calc(env(safe-area-inset-bottom) + 14px));min-width:168px;min-height:54px;padding-inline:24px;font-size:16px}.depth-feedback{background:linear-gradient(90deg, rgb(var(--success) / 48%) 0%, rgb(var(--success) / 12%) 14%, transparent 34%, transparent 66%, rgb(var(--success) / 12%) 86%, rgb(var(--success) / 48%) 100%), linear-gradient(180deg, rgb(var(--success) / 32%) 0%, transparent 21%, transparent 76%, rgb(var(--success) / 4%) 100%)}}@media (height<=520px){.count-hud{top:max(12px, calc(env(safe-area-inset-top) + 8px));font-size:clamp(64px,18vh,96px)}.camera-button{bottom:max(12px, calc(env(safe-area-inset-bottom) + 8px));min-height:48px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.app--depth-reached .depth-feedback{opacity:.72}}
