:root{--ds-font-sans: "Pretendard", ui-sans-serif, system-ui, -apple-system, Segoe UI, Roboto, "Noto Sans", "Apple SD Gothic Neo", "Malgun Gothic", "Helvetica Neue", Arial, "Apple Color Emoji", "Segoe UI Emoji";--ds-font-logo: "Sandoll Hoyoyo2 TTF", "Pretendard", var(--ds-font-sans);--ds-white: #ffffff;--ds-black: #010101;--ds-apple-black: #111111;--ds-gray-50: #fafafa;--ds-gray-100: #f4f4f4;--ds-gray-200: #e9e9e9;--ds-gray-300: #d9d9d9;--ds-gray-400: #c4c4c4;--ds-gray-500: #7b7b7b;--ds-gray-600: #555555;--ds-gray-700: #434343;--ds-gray-800: #262626;--ds-pink-50: #fffdfE;--ds-pink-100: #fff7fe;--ds-pink-200: #fdefff;--ds-pink-300: #f4cdfc;--ds-pink-400: #f79dff;--ds-pink-500: #ac08a1;--ds-pink-600: #df81e9;--ds-primary: var(--ds-pink-500);--ds-bg-1: linear-gradient(180deg, rgba(253, 239, 255, 1) 0%, rgba(255, 255, 255, 1) 50vh, rgba(255, 255, 255, 1) 100%);--ds-bg-2: #ffffff;--ds-radius-sm: 12px;--ds-radius-md: 16px;--ds-radius-lg: 20px;--ds-radius-xl: 28px;--ds-shadow-sm: 0 1px 1px rgba(217, 217, 217, .9);--ds-shadow-md: 0 12px 30px rgba(1, 1, 1, .08);--ds-focus: 0 0 0 4px rgba(244, 205, 252, .9)}html{overflow-x:hidden}body{margin:0;font-family:var(--ds-font-sans);color:var(--ds-apple-black);background:var(--ds-bg-1);background-repeat:no-repeat;background-color:#fff;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;width:100%;max-width:100vw;overflow-x:hidden}#root{overflow:visible}.ds-app{min-height:100vh;overflow:visible}.ds-container{max-width:1120px;margin:0 auto;padding:0 24px}@media(min-width:640px){.ds-container{padding:0 32px}}.ds-glass{background:#fdefff99;border:1px solid rgba(255,255,255,.7);box-shadow:var(--ds-shadow-sm);-webkit-backdrop-filter:blur(5.5px);backdrop-filter:blur(5.5px)}.ds-card{background:var(--ds-white);border:1px solid rgba(0,0,0,.06);border-radius:var(--ds-radius-xl);box-shadow:var(--ds-shadow-md)}.ds-surface{background:var(--ds-white);border:1px solid rgba(0,0,0,.06);border-radius:var(--ds-radius-lg)}.ds-title{letter-spacing:-.02em}.ds-logo{font-family:var(--ds-font-logo);letter-spacing:.01em}.ds-link{color:var(--ds-gray-700);transition:color .16s ease}.ds-link:hover{color:var(--ds-pink-500)}.ds-input{width:100%;background:var(--ds-white);border:1px solid var(--ds-gray-300);border-radius:var(--ds-radius-lg);padding:14px 16px;color:var(--ds-apple-black);outline:none;transition:border-color .16s ease,box-shadow .16s ease}.ds-input::placeholder{color:var(--ds-gray-500)}.ds-input:focus{border-color:var(--ds-pink-500);box-shadow:var(--ds-focus)}.ds-input:disabled{background:var(--ds-gray-100);color:var(--ds-gray-500)}.ds-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;height:55px;padding:0 24px;border-radius:var(--ds-radius-lg);font-weight:700;letter-spacing:-.02em;border:1px solid transparent;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,color .16s ease,border-color .16s ease;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent}.ds-btn:focus{outline:none;box-shadow:var(--ds-focus)}.ds-btn:active{transform:translateY(1px)}.ds-btn--primary{background:var(--ds-pink-500);color:var(--ds-white)}.ds-btn--primary:hover{background:#990891}.ds-btn--neutral{background:var(--ds-gray-400);color:var(--ds-white)}.ds-btn--neutral:hover{background:#b0b0b0}.ds-btn--outline{background:#ffffffb3;color:var(--ds-apple-black);border-color:#00000014}.ds-btn--outline:hover{border-color:#ac08a159}.ds-btn[disabled],.ds-btn:disabled{opacity:.6;cursor:not-allowed;transform:none}@keyframes mingo-float{0%,to{transform:translateY(0) rotate(0)}25%{transform:translateY(-8px) rotate(2deg)}75%{transform:translateY(-4px) rotate(-2deg)}}.mingo-animate{animation:mingo-float 4s ease-in-out infinite}@keyframes mingo-walk{0%{transform:translate(-100px) translateY(0)}10%{transform:translate(-80px) translateY(-6px)}20%{transform:translate(-60px) translateY(0)}30%{transform:translate(-40px) translateY(-6px)}40%{transform:translate(-20px) translateY(0)}50%{transform:translate(0) translateY(-6px)}60%{transform:translate(20px) translateY(0)}70%{transform:translate(40px) translateY(-6px)}80%{transform:translate(60px) translateY(0)}90%{transform:translate(80px) translateY(-6px)}to{transform:translate(100px) translateY(0)}}.mingo-walk{animation:mingo-walk 2.5s ease-in-out infinite}@keyframes shimmer-border{0%{background-position:200% center}to{background-position:-200% center}}.topic-btn{position:relative;background:#fff;border-radius:9999px;padding:10px 20px;font-size:14px;font-weight:600;color:var(--ds-pink-500);cursor:pointer;transition:transform .2s ease,box-shadow .2s ease;z-index:1}.topic-btn:before{content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border-radius:9999px;background:linear-gradient(90deg,var(--ds-pink-300),var(--ds-pink-500),#a855f7,var(--ds-pink-500),var(--ds-pink-300));background-size:200% auto;animation:shimmer-border 3s linear infinite;z-index:-1}.topic-btn:after{content:"";position:absolute;top:1px;right:1px;bottom:1px;left:1px;background:#fff;border-radius:9999px;z-index:-1}.topic-btn:hover{transform:translateY(-1px) scale(1.03);box-shadow:0 3px 10px #ac08a133}@keyframes btn-pulse{0%,to{transform:scale(1);box-shadow:0 0 #ac08a100}15%{transform:scale(1.08);box-shadow:0 0 20px 4px #ac08a166}30%{transform:scale(1);box-shadow:0 0 #ac08a100}45%{transform:scale(1.08);box-shadow:0 0 20px 4px #ac08a166}60%{transform:scale(1);box-shadow:0 0 #ac08a100}}.btn-pulse{animation:btn-pulse 1s ease-out}@keyframes tutorial-bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}@keyframes tutorial-pulse{0%,to{opacity:.6}50%{opacity:1}}.animate-tutorial-bounce{animation:tutorial-bounce 1.5s ease-in-out infinite}.animate-tutorial-pulse{animation:tutorial-pulse 1.2s ease-in-out infinite}
