*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--pink: #ee2bad;--purple: #c026d3;--grad: linear-gradient(135deg, #ee2bad 0%, #c026d3 100%)}:root{--bg: #22101c;--bg-2: #2d1625;--surface: rgba(255,255,255,.05);--surface-2: rgba(255,255,255,.03);--surface-elevated: rgba(28,10,22,.97);--card-bg: rgba(255,255,255,.05);--card-shadow: 0 2px 16px rgba(0,0,0,.4);--border: rgba(238,43,173,.12);--text: #FFFFFF;--text-muted: rgba(255,255,255,.65);--text-dim: rgba(255,255,255,.35);--nav-bg: rgba(34,16,28,.85);--overlay-bg: rgba(22,8,18,.92);--scrollbar: rgba(255,255,255,.12)}[data-theme=light]{--bg: #f8f6f7;--bg-2: #f0ecee;--surface: rgba(255,255,255,.85);--surface-2: rgba(255,255,255,.5);--surface-elevated: rgba(255,255,255,.99);--card-bg: #ffffff;--card-shadow: 0 2px 14px rgba(0,0,0,.07);--border: rgba(238,43,173,.1);--text: #1a0a14;--text-muted: rgba(26,10,20,.62);--text-dim: rgba(26,10,20,.38);--nav-bg: rgba(248,246,247,.9);--overlay-bg: rgba(248,246,247,.93);--scrollbar: rgba(238,43,173,.15)}@media(prefers-color-scheme:light){:root:not([data-theme]){--bg: #f8f6f7;--bg-2: #f0ecee;--surface: rgba(255,255,255,.85);--surface-2: rgba(255,255,255,.5);--surface-elevated: rgba(255,255,255,.99);--card-bg: #ffffff;--card-shadow: 0 2px 14px rgba(0,0,0,.07);--border: rgba(238,43,173,.1);--text: #1a0a14;--text-muted: rgba(26,10,20,.62);--text-dim: rgba(26,10,20,.38);--nav-bg: rgba(248,246,247,.9);--overlay-bg: rgba(248,246,247,.93);--scrollbar: rgba(238,43,173,.15)}}html{scroll-behavior:smooth}body{font-family:Plus Jakarta Sans,Noto Sans KR,Inter,-apple-system,BlinkMacSystemFont,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;transition:background .25s,color .25s}::-webkit-scrollbar{width:5px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--scrollbar);border-radius:99px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes fadeUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}button{cursor:pointer}input::placeholder{color:var(--text-dim)}
