@import"https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/static/pretendard.min.css";@import"https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{font-family:Pretendard,-apple-system,BlinkMacSystemFont,sans-serif;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color-scheme:light}body{margin:0;min-width:320px;min-height:100vh;background:#f9fafb}@keyframes slideUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}.auth-card{animation:slideUp .4s cubic-bezier(.16,1,.3,1) forwards}@keyframes fadeInUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.form-enter{animation:fadeInUp .22s cubic-bezier(.16,1,.3,1) forwards}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.input-line{border-bottom:1.5px solid #E5E8EB;transition:border-color .18s ease}.input-line:focus-within{border-color:#3182f6}.input-line.has-error{border-color:#f04452!important}.input-line input{width:100%;border:none;outline:none;background:transparent;padding:12px 0;font-size:15px;color:#191f28;font-family:Pretendard,sans-serif}.input-line input::placeholder{color:#c4cad4}.input-line.pw-input input{padding-right:36px}.btn-primary{width:100%;height:52px;background:#3182f6;color:#fff;border:none;border-radius:12px;font-size:16px;font-weight:600;font-family:Pretendard,sans-serif;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;transition:background .15s,transform .1s}.btn-primary:hover:not(:disabled){background:#1b64da}.btn-primary:active:not(:disabled){transform:scale(.98)}.btn-primary:disabled{background:#6baaf8;cursor:not-allowed}.btn-google{width:100%;height:52px;border:1.5px solid #E5E8EB;border-radius:12px;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:8px;font-size:15px;font-weight:500;color:#191f28;font-family:Pretendard,sans-serif;transition:background .15s,border-color .15s,transform .1s}.btn-google:hover:not(:disabled){background:#f7f8fa;border-color:#d1d6db}.btn-google:active:not(:disabled){transform:scale(.98)}.btn-google:disabled{opacity:.6;cursor:not-allowed}.btn-link{background:none;border:none;padding:0;font-family:Pretendard,sans-serif;cursor:pointer;transition:opacity .1s}.btn-link:active{opacity:.6}@keyframes resultSlideIn{0%{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.result-card-enter{animation:resultSlideIn .4s cubic-bezier(.16,1,.3,1) forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes completeFadeIn{0%{opacity:0}to{opacity:1}}@keyframes checkCircle{0%{stroke-dashoffset:200}to{stroke-dashoffset:0}}@keyframes checkMark{0%{stroke-dashoffset:50}to{stroke-dashoffset:0}}@keyframes riseUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes panelSlideUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes particleFly{0%{opacity:1;transform:translate(-50%,-50%) scale(1)}60%{opacity:.8}to{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) scale(.2)}}@keyframes badgeBounce{0%{transform:scale(1)}35%{transform:scale(1.5)}65%{transform:scale(.9)}to{transform:scale(1)}}.badge-bounce{animation:badgeBounce .5s cubic-bezier(.16,1,.3,1)}.spin{animation:spin 1s linear infinite}.flying-ball-x{position:fixed;z-index:9999;pointer-events:none;animation:flyingBallX 1.6s cubic-bezier(.25,1,.5,1) forwards}.flying-ball-y{width:20px;height:20px;background:#3182f6;border-radius:50%;box-shadow:0 0 16px #3182f699;animation:flyingBallY 1.6s cubic-bezier(.5,0,1,.5) forwards}@keyframes flyingBallX{0%{transform:translate(0)}to{transform:translate(var(--target-x))}}@keyframes flyingBallY{0%{opacity:1;transform:translateY(0) scale(.6)}20%{transform:translateY(-80px) scale(1)}to{opacity:0;transform:translateY(var(--target-y)) scale(.3)}}
