:root{--ink:#111113;--ink2:#3A3A3F;--sub:#5C5C63;--bg:#F2F2F7;--line:rgba(60,60,67,0.2);--orange:linear-gradient(180deg,#FF7136,#EC4A12);--accent:#F2551B;--accent2:#FF7A42;--inkgrad:linear-gradient(180deg,#2E2E31,#111113);--glow:radial-gradient(130% 34% at 50% -6%,rgba(255,138,86,0.12) 0%,rgba(255,138,86,0) 70%),#F2F2F7;--safe-b:env(safe-area-inset-bottom,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}body,html{margin:0;background:var(--bg);color:var(--ink)}body{font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,Apple SD Gothic Neo,Noto Sans KR,sans-serif;-webkit-font-smoothing:antialiased;letter-spacing:-.008em;word-break:keep-all;overscroll-behavior-y:none}a{color:inherit}button,input,textarea{font-family:inherit;color:inherit}input,textarea{outline:none}input::placeholder,textarea::placeholder{color:#8A8A90}a:active,button:active{transform:scale(.97)}a,button{transition:transform .12s ease-out}button:disabled{opacity:.45;cursor:default}.screen{position:relative;max-width:480px;margin:0 auto;min-height:100dvh;overflow-x:hidden}.tnum{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.wm-l,.wm-r{position:relative;z-index:1;display:inline-block}.wm-r{transform:translateX(-23px);animation:wmR 5.6s infinite;transform-origin:0 100%}.wm-dc{animation:wmDC 5.6s infinite}.wm-dl,.wm-dr{animation:wmDL 5.6s infinite}.wm-dl{transform-origin:100% 50%}.wm-dr{transform-origin:0 50%;animation-name:wmDR}.wm-h{opacity:0;animation:wmH 5.6s infinite}@keyframes wmR{0%,24%{transform:translateX(-23px);animation-timing-function:cubic-bezier(.45,0,.25,1)}40%{transform:translateX(0)}42%{transform:translateX(1px)}44%{transform:translateX(0)}46%{transform:translateX(1.2px)}48%{transform:translateX(.5px);animation-timing-function:cubic-bezier(.2,1.5,.4,1)}55%,80%{transform:translateX(10px) rotate(7deg);animation-timing-function:cubic-bezier(.4,0,.2,1)}94%,to{transform:translateX(-23px)}}@keyframes wmDC{0%,24%{width:0;animation-timing-function:cubic-bezier(.45,0,.25,1)}40%,47.9%{width:20px}48%,82%{width:36px}83%,to{width:0}}@keyframes wmDL{0%,48%{opacity:1;transform:none;animation-timing-function:ease-out}56%,99.9%{opacity:0;transform:translate(-1px,2px) rotate(-28deg)}to{opacity:1;transform:none}}@keyframes wmDR{0%,48%{opacity:1;transform:none;animation-timing-function:ease-out}56%,99.9%{opacity:0;transform:translate(9px,3px) rotate(32deg)}to{opacity:1;transform:none}}@keyframes wmH{0%,49%{opacity:0;transform:translate(6.5px,4px) scale(.2);animation-timing-function:cubic-bezier(.3,1.6,.5,1)}57%{opacity:1;transform:translate(6.5px) scale(1)}63%{transform:translate(6.5px) scale(1.12)}69%,76%{opacity:1;transform:translate(6.5px) scale(1)}81%,to{opacity:0;transform:translate(6.5px) scale(.5)}}@keyframes live{50%{opacity:.35}}.live{animation:live 1.6s ease-in-out infinite}@keyframes spin{to{transform:rotate(1turn)}}.spin{animation:spin .9s linear infinite}@keyframes nudge{0%,72%,to{transform:none}82%{transform:rotateY(30deg) rotate(-7deg)}90%{transform:rotateY(9deg) rotate(-2deg)}}.nudge{animation:nudge 3.4s ease-in-out 1.2s infinite}@keyframes burst{0%{transform:translate(-50%,-50%) scale(.3);opacity:0}35%{transform:translate(-50%,-50%) scale(1.15);opacity:1}70%{transform:translate(-50%,-62%) scale(1);opacity:1}to{transform:translate(-50%,-80%) scale(.9);opacity:0}}.burst{animation:burst .9s cubic-bezier(.2,.8,.2,1) both}@keyframes drop{0%{transform:translate(-50%,-12px);opacity:0}to{transform:translate(-50%);opacity:1}}.toast{animation:drop .28s cubic-bezier(.2,.8,.2,1) both}@keyframes shake{0%,to{transform:none}20%,60%{transform:translateX(-6px)}40%,80%{transform:translateX(6px)}}.shake{animation:shake .36s ease-in-out 1}@keyframes rise{0%{transform:translateY(24px);opacity:0}to{transform:none;opacity:1}}.rise{animation:rise .5s cubic-bezier(.2,.9,.3,1) both}@keyframes pop{0%{transform:scale(.4);opacity:0}60%{transform:scale(1.12);opacity:1}to{transform:scale(1)}}.pop{animation:pop .6s cubic-bezier(.2,.9,.3,1) .15s both}@keyframes sheet{0%{transform:translateY(100%)}to{transform:none}}.sheet{animation:sheet .32s cubic-bezier(.2,.9,.3,1) both}@keyframes caret{50%{opacity:0}}.caret{animation:caret 1s steps(1) infinite}@keyframes dot{0%,80%,to{opacity:.25}40%{opacity:1}}.d1{animation:dot 1.2s infinite}.d2{animation:dot 1.2s .2s infinite}.d3{animation:dot 1.2s .4s infinite}@media (prefers-reduced-motion:reduce){.burst,.live,.nudge,.pop,.rise,.shake,.sheet,.toast,.wm-dc,.wm-dl,.wm-dr,.wm-h,.wm-r{animation:none}.wm-r{transform:none}.wm-dc{width:18px}.wm-h{opacity:0}.spin{animation-duration:3s}}