:root{--primary:#355872;--primary-hover:#2a4560;--primary-light:#d4e8f5;--bg:#f7f8f0;--bg-secondary:#edf0e8;--bg-tertiary:#e2e6dc;--text:#1a2830;--text-secondary:#5a7080;--text-tertiary:#8aa0b0;--border:#d8ddd5;--border-light:#e4e8df;--shadow-sm:0 1px 2px #3558720f;--shadow-md:0 4px 16px #35587214;--shadow-lg:0 12px 40px #3558721f;--radius:10px;--radius-sm:6px;--radius-lg:16px;--header-bg:#f7f8f0e0;--header-border:var(--border-light);--hero-gradient:var(--bg);--nav-text:var(--text-secondary);--nav-text-hover:var(--text);--nav-hover-bg:var(--bg-tertiary);--hero-text:var(--text);--hero-text-secondary:var(--text-secondary);--hero-search-btn-bg:var(--primary);--hero-search-btn-color:#fff;--stats-bg:#355872}[data-theme=dark]{--primary:#7aa2cc;--primary-hover:#5a82ac;--primary-light:#1a2a3a;--bg:#141412;--bg-secondary:#1e1d1a;--bg-tertiary:#28271f;--text:#f0efe8;--text-secondary:#9b9a93;--text-tertiary:#5c5b55;--border:#2e2d28;--border-light:#242318;--shadow-sm:0 1px 3px #0006;--shadow-md:0 4px 16px #00000080;--shadow-lg:0 12px 40px #0009;--header-bg:#141412e0;--header-border:var(--border-light);--hero-gradient:var(--bg);--nav-text:var(--text-secondary);--nav-text-hover:var(--text);--nav-hover-bg:var(--bg-tertiary);--hero-text:var(--text);--hero-text-secondary:var(--text-secondary);--hero-search-btn-bg:var(--primary);--hero-search-btn-color:#fff;--stats-bg:#0d1f35}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,Pretendard,Apple SD Gothic Neo,Noto Sans KR,sans-serif;font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}ul{list-style:none}@keyframes fadeUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}.hero-anim>*{opacity:0;animation:.65s cubic-bezier(.16,1,.3,1) forwards fadeUp}.hero-anim>:first-child{animation-delay:50ms}.hero-anim>:nth-child(2){animation-delay:.15s}.hero-anim>:nth-child(3){animation-delay:.27s}.hero-anim>:nth-child(4){animation-delay:.38s}.hero-anim>:nth-child(5){animation-delay:.48s}.will-fade{opacity:0;transition:opacity .55s cubic-bezier(.16,1,.3,1),transform .55s cubic-bezier(.16,1,.3,1);transform:translateY(18px)}.will-fade.in-view{opacity:1;transform:translateY(0)}.theme-transitioning,.theme-transitioning *,.theme-transitioning :before,.theme-transitioning :after{transition:background-color .3s,background .3s,color .3s,border-color .3s,box-shadow .3s!important}.typing-word{background:linear-gradient(135deg,#355872 0%,#7aaace 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}[data-theme=dark] .typing-word{background:linear-gradient(135deg,#7aa2cc 0%,#93c5fd 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.tag-blue{color:#2563eb;background:#eff6ff}.tag-pink{color:#db2777;background:#fdf2f8}.tag-green{color:#16a34a;background:#f0fdf4}.tag-purple{color:#7c3aed;background:#faf5ff}.tag-orange{color:#ea580c;background:#fff7ed}.tag-teal{color:#0d9488;background:#f0fdfa}.tag-gray{color:#6b7280;background:#f9fafb}.tag-indigo{color:#4338ca;background:#eef2ff}.tag-red{color:#e11d48;background:#fff1f2}.tag-amber{color:#d97706;background:#fffbeb}.tag-cyan{color:#0891b2;background:#ecfeff}.tag-lime{color:#65a30d;background:#f7fee7}[data-theme=dark] .tag-blue{color:#60a5fa;background:#1e3a5f}[data-theme=dark] .tag-pink{color:#e879a8;background:#2d1a2e}[data-theme=dark] .tag-green{color:#6bcf85;background:#1a2d1e}[data-theme=dark] .tag-purple{color:#b388f0;background:#261a3a}[data-theme=dark] .tag-orange{color:#f0a066;background:#2d1f10}[data-theme=dark] .tag-teal{color:#4dcfc0;background:#0f2828}[data-theme=dark] .tag-gray{color:#a1a1aa;background:#18181b}[data-theme=dark] .tag-indigo{color:#8b8ff0;background:#1a1e3a}[data-theme=dark] .tag-red{color:#f07080;background:#2d1a1e}[data-theme=dark] .tag-amber{color:#f0c060;background:#2d2310}[data-theme=dark] .tag-cyan{color:#4dc8e8;background:#0f2430}[data-theme=dark] .tag-lime{color:#9acf50;background:#1a2810}
