@import url("https://cdn.jsdelivr.net/gh/orioncactus/pretendard@v1.3.9/dist/web/variable/pretendardvariable.min.css");@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@300;400;500;600;700&family=Noto+Sans+SC:wght@300;400;500;600;700&family=Noto+Sans+Thai:wght@300;400;500;600;700&display=swap");:root{--color-primary:#6366f1;--color-primary-light:#818cf8;--color-primary-dark:#4f46e5;--color-secondary:#22d3ee;--color-accent:#f472b6;--color-success:#10b981;--color-warning:#f59e0b;--color-error:#ef4444;--color-background:#0f0f23;--color-surface:#1a1a2e;--color-surface-light:#242447;--color-text:#e2e8f0;--color-text-secondary:#94a3b8;--color-text-muted:#64748b;--color-border:#2d2d44;--gradient-primary:linear-gradient(135deg,#6366f1,#a855f7 50%,#ec4899);--gradient-hover:linear-gradient(135deg,#818cf8,#c084fc 50%,#f472b6);--shadow-sm:0 1px 2px 0 rgba(0,0,0,0.4);--shadow-md:0 4px 6px -1px rgba(0,0,0,0.4),0 2px 4px -2px rgba(0,0,0,0.4);--shadow-lg:0 10px 15px -3px rgba(0,0,0,0.4),0 4px 6px -4px rgba(0,0,0,0.4);--shadow-xl:0 20px 25px -5px rgba(0,0,0,0.4),0 8px 10px -6px rgba(0,0,0,0.4);--shadow-glow:0 0 40px rgba(99,102,241,0.3)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:Pretendard Variable,Noto Sans KR,Noto Sans Thai,Noto Sans SC,-apple-system,BlinkMacSystemFont,system-ui,sans-serif;background:var(--color-background);color:var(--color-text);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{color:var(--color-primary-light);text-decoration:none;transition:color .2s ease}a:hover{color:var(--color-primary)}::selection{background:var(--color-primary);color:white}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-surface)}::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--color-text-muted)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-in{animation:fadeIn .5s ease-out}.animate-slide-up{animation:slideUp .5s ease-out}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-float{animation:float 3s ease-in-out infinite}.gradient-text{background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.gradient-border{position:relative;border-radius:12px}.gradient-border:before{content:"";position:absolute;inset:0;border-radius:12px;padding:1px;background:var(--gradient-primary);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}.bg-grid{background-image:linear-gradient(rgba(99,102,241,.03) 1px,transparent 0),linear-gradient(90deg,rgba(99,102,241,.03) 1px,transparent 0);background-size:50px 50px}.bg-dots{background-image:radial-gradient(rgba(99,102,241,.15) 1px,transparent 0);background-size:30px 30px}