:root{--color-bg:#fff;--color-bg-alt:#f2f4f6;--color-card-bg:#fff;--color-card-hover-bg:#f8fafb;--color-text-primary:#191f28;--color-text-secondary:#4e5968;--color-text-muted:#8b95a1;--color-border:#e5e8eb;--color-border-light:#e5e8eb;--color-accent:#3182f6;--color-accent-hover:#1b64da;--color-accent-soft:#e8f3ff;--color-link:#3182f6;--color-code-bg:#f2f4f6;--color-md-block:#f2f4f6;--color-tag-bg:#f2f4f6;--color-tag-bg-first:#e8f3ff;--color-nav-bg:hsla(0,0%,100%,.8);--color-comment-bg:#f2f4f6;--color-heart-count:#4e5968;--color-submit-bg:#3182f6;--color-submit-text:#fff;--color-page-num:#f2f4f6;--color-page-num-text:#8b95a1;--color-page-num-active:#3182f6;--color-table-header:#f2f4f6;--color-blockquote-border:#3182f6;--color-details-bg:#f8fafb;--color-code-shadow:transparent;--shadow-card:0 1px 2px rgba(0,0,0,.04),0 2px 8px rgba(0,0,0,.04);--shadow-card-hover:0 4px 12px rgba(0,0,0,.08),0 12px 32px rgba(0,0,0,.08);--shadow-nav:0 1px 0 rgba(0,0,0,.04);--radius-sm:8px;--radius-md:14px;--radius-lg:20px;--radius-full:999px;--ease-spring:cubic-bezier(0.22,1,0.36,1);--duration-fast:0.15s;--duration-base:0.25s;--duration-slow:0.45s}html[data-theme=dark]{--color-bg:#17171c;--color-bg-alt:#1e1e24;--color-card-bg:#222229;--color-card-hover-bg:#26262e;--color-text-primary:#fff;--color-text-secondary:#c3c8cf;--color-text-muted:#7d848d;--color-border:#2c2c35;--color-border-light:#2c2c35;--color-accent:#4593fc;--color-accent-hover:#6aa8fd;--color-accent-soft:rgba(49,130,246,.16);--color-link:#4593fc;--color-code-bg:#1e1e24;--color-md-block:#1e1e24;--color-tag-bg:#26262e;--color-tag-bg-first:rgba(49,130,246,.16);--color-nav-bg:rgba(23,23,28,.8);--color-comment-bg:#26262e;--color-heart-count:#c3c8cf;--color-submit-bg:#3182f6;--color-submit-text:#fff;--color-page-num:#26262e;--color-page-num-text:#7d848d;--color-page-num-active:#4593fc;--color-table-header:#26262e;--color-blockquote-border:#4593fc;--color-details-bg:#1e1e24;--color-code-shadow:transparent;--shadow-card:0 1px 2px rgba(0,0,0,.2),0 2px 8px rgba(0,0,0,.2);--shadow-card-hover:0 4px 12px rgba(0,0,0,.35),0 12px 32px rgba(0,0,0,.35);--shadow-nav:0 1px 0 hsla(0,0%,100%,.06)}*{margin:0;padding:0;outline:none;color:var(--color-text-primary)}*,:after,:before{box-sizing:inherit;vertical-align:bottom}body,html{box-sizing:border-box;background-color:var(--color-bg);transition:background-color .25s ease,color .25s ease;overflow-x:hidden;font-family:Pretendard Variable,Pretendard,-apple-system,BlinkMacSystemFont,Segoe UI,Apple SD Gothic Neo,Roboto,Noto Sans KR,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;letter-spacing:-.01em}body ::-webkit-scrollbar,html ::-webkit-scrollbar{height:100%;width:10px}body ::-webkit-scrollbar-thumb,html ::-webkit-scrollbar-thumb{width:2px;background-color:rgba(139,149,161,.4);border-radius:6px}body{font-family:inherit}form{display:block}a,a:active{outline:none}a{display:block;text-decoration:none;color:var(--color-text-primary)}i{display:inline-block}button,input,textarea{font-family:inherit}input,input:active{outline:none}input{margin:0;border:none}button,button:active{outline:none}button{border:none;letter-spacing:-.01em;cursor:pointer;background-color:initial;line-height:0;transition:transform var(--duration-fast) var(--ease-spring)}button:active{transform:scale(.96)}:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:4px}img{border:0}li,ul{list-style-type:none}h1{font-size:2.6rem;font-weight:800;line-height:1.25}h1,h2{letter-spacing:-.02em}h2{font-weight:700}span{font-size:.8rem;color:var(--color-text-muted)}::selection{background-color:var(--color-accent-soft);color:var(--color-accent)}.wrapper{width:100%;max-width:1024px;flex-direction:column;margin:5rem auto 0;position:relative;min-height:calc(100vh - 80px)}.wrapper,.wrapper .nav_wrapper{display:flex;align-items:center;justify-content:space-between}.wrapper .nav_wrapper{position:fixed;top:0;z-index:99;width:100vw;background-color:var(--color-nav-bg);backdrop-filter:blur(16px) saturate(1.8);-webkit-backdrop-filter:blur(16px) saturate(1.8);box-shadow:var(--shadow-nav);transition:transform var(--duration-base) var(--ease-spring);padding:0 calc((100% - 1024px)/2)}.wrapper .nav_wrapper.nav-hidden{transform:translateY(-100%)}.wrapper .nav_wrapper .logo{padding:18px 30px;transition:transform var(--duration-fast) var(--ease-spring)}.wrapper .nav_wrapper .logo:hover{transform:scale(1.06)}.wrapper .nav_wrapper .logo>i{background:url(/images/image.svg) no-repeat -4px -31px;width:17px;height:51px}.wrapper .nav_wrapper .hamburger{display:none;flex-direction:column;gap:5px;padding:10px;margin-right:20px;background:none;border:none;cursor:pointer;z-index:101}.wrapper .nav_wrapper .hamburger span{display:block;width:22px;height:2px;border-radius:2px;background-color:var(--color-text-primary);transition:.3s var(--ease-spring);font-size:0;color:transparent}.wrapper .nav_wrapper nav{display:flex;align-items:center;justify-content:flex-end;gap:8px;padding:18px 30px}.wrapper .nav_wrapper nav>a{color:var(--color-text-secondary);font-weight:600;font-size:.95rem;padding:8px 14px;border-radius:var(--radius-sm);transition:background-color var(--duration-fast) ease,color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-spring)}.wrapper .nav_wrapper nav>a:hover{background-color:var(--color-bg-alt);color:var(--color-text-primary)}.wrapper .nav_wrapper nav>a:active{transform:scale(.95)}.wrapper .nav_wrapper nav>a.active{color:var(--color-accent);background-color:var(--color-accent-soft)}.wrapper .nav_wrapper nav .icon-btn{background:none;border:none;cursor:pointer;padding:8px;border-radius:var(--radius-sm);display:flex;align-items:center;color:var(--color-text-secondary);transition:background-color var(--duration-fast) ease}.wrapper .nav_wrapper nav .icon-btn:hover{background-color:var(--color-bg-alt)}.wrapper .nav_wrapper nav .login-btn{line-height:0}.wrapper .nav_wrapper nav .login{background:url(/images/image.svg) no-repeat -120px -6px;width:17px;height:20px;cursor:pointer}.wrapper .nav_wrapper nav .login.logout{background:url(/images/image.svg) no-repeat -158px -6px;width:17px;height:20px}.wrapper .nav_wrapper nav .mode{background:url(/images/image.svg) no-repeat -65px -6px;width:20px;height:20px;cursor:pointer}.wrapper .content{position:relative;width:100%;max-width:1024px;padding:20px;flex:1 1;overflow-x:hidden}.wrapper .content:not(:has(.main_wrapper)){margin:60px 0 50px}.wrapper .footer_wrapper{width:100%}.wrapper .footer_wrapper footer{display:flex;align-items:center;justify-content:normal;width:100%;flex-direction:column;padding:40px 0 32px;gap:14px;border-top:1px solid var(--color-border)}.wrapper .footer_wrapper footer .icon_group{display:flex;align-items:center;justify-content:normal;gap:8px}.wrapper .footer_wrapper footer .icon_group a{display:flex;align-items:center;padding:10px;border-radius:var(--radius-full);color:var(--color-text-secondary);transition:background-color var(--duration-fast) ease,transform var(--duration-fast) var(--ease-spring)}.wrapper .footer_wrapper footer .icon_group a:hover{background-color:var(--color-bg-alt);transform:translateY(-2px)}.wrapper .footer_wrapper footer .icon_group i.email{background:url(/images/image.svg) no-repeat -57px -48px;width:22px;height:18px}.wrapper .footer_wrapper footer .icon_group i.github{background:url(/images/image.svg) no-repeat -90px -41px;width:25px;height:25px}.wrapper .footer_wrapper footer .icon_group i.instagram{background:url(/images/image.svg) no-repeat -125px -44px;width:23px;height:22px}.wrapper .footer_wrapper footer .detail>a{color:var(--color-text-muted);font-size:12px}@media(max-width:768px){.wrapper .nav_wrapper{padding:0 10px}.wrapper .nav_wrapper .hamburger{display:flex}.wrapper .nav_wrapper nav{position:fixed;top:0;right:-100%;width:72%;max-width:300px;height:100vh;flex-direction:column;align-items:flex-start;justify-content:flex-start;padding:80px 24px 30px;background-color:var(--color-bg);box-shadow:-8px 0 32px rgba(0,0,0,.12);transition:right .35s var(--ease-spring);z-index:100;gap:8px}.wrapper .nav_wrapper nav.open{right:0}.wrapper .nav_wrapper nav>a{font-size:1.05rem;width:100%;padding:14px 16px;border-radius:var(--radius-md)}.wrapper .content{padding:15px}}@media(min-width:769px)and (max-width:1024px){.wrapper .nav_wrapper{padding:0 20px}.wrapper .detail_page_wrapper .toc_wrapper{position:static;margin-top:30px}.wrapper .detail_page_wrapper .toc_wrapper .toc_content{position:static;text-align:center;margin:0 auto;height:auto}.wrapper .detail_page_wrapper .toc_wrapper .toc_content span{display:block;width:100%}.wrapper .detail_page_wrapper .toc_wrapper .toc_content>*{margin-left:0!important}}html[data-theme=dark] ::-webkit-scrollbar-thumb{background:#b5b5b5}html[data-theme=dark] .nav_wrapper .logo>i{background-position:-26px -31px}html[data-theme=dark] .nav_wrapper nav .login{background-position:-139px -6px}html[data-theme=dark] .nav_wrapper nav .login.logout{background-position:-177px -6px}html[data-theme=dark] .nav_wrapper nav .mode{background-position:-95px -6px;width:12px}html[data-theme=dark] .footer_wrapper footer .icon_group i.email{background-position:-57px -78px}html[data-theme=dark] .footer_wrapper footer .icon_group i.github{background-position:-90px -71px}html[data-theme=dark] .footer_wrapper footer .icon_group i.instagram{background-position:-125px -74px}html[data-theme=dark] .main_wrapper .tag_wrap a{border:1px solid var(--color-border-light)}html[data-theme=dark] .md_wrapper li>ul *{color:var(--color-text-secondary)}html[data-theme=dark] .md_wrapper pre div{box-shadow:none}