﻿.notion-page{--n-text: #37352f;--n-muted: #787774;--n-border: rgba(55, 53, 47, 0.16);--n-hover: rgba(55, 53, 47, 0.06);--n-header-bg: #f7f6f3;--n-code-text: #eb5757;--n-code-bg: rgba(135, 131, 120, 0.15);--n-check: #2383e2;--n-c-gray: #787774;--n-c-brown: #9f6b53;--n-c-orange: #d9730d;--n-c-yellow: #cb912f;--n-c-green: #448361;--n-c-blue: #337ea9;--n-c-purple: #9065b0;--n-c-pink: #c14c8a;--n-c-red: #d44c47;--n-bg-gray: #f1f1ef;--n-bg-brown: #f4eeee;--n-bg-orange: #fbecdd;--n-bg-yellow: #fbf3db;--n-bg-green: #edf3ec;--n-bg-blue: #e7f3f8;--n-bg-purple: #f6f3f9;--n-bg-pink: #faf1f5;--n-bg-red: #fdebec;--n-tag-text: #32302c;--n-tag-default: rgba(227, 226, 224, 0.5);--n-tag-gray: #e3e2e0;--n-tag-brown: #eee0da;--n-tag-orange: #fadec9;--n-tag-yellow: #fdecc8;--n-tag-green: #dbeddb;--n-tag-blue: #d3e5ef;--n-tag-purple: #e8deee;--n-tag-pink: #f5e0e9;--n-tag-red: #ffe2dd}:root[data-bs-theme=dark] .notion-page{--n-text: rgba(255, 255, 255, 0.81);--n-muted: #9b9b9b;--n-border: rgba(255, 255, 255, 0.13);--n-hover: rgba(255, 255, 255, 0.055);--n-header-bg: #252525;--n-code-text: #ff7369;--n-code-bg: rgba(135, 131, 120, 0.15);--n-check: #2383e2;--n-c-gray: #9b9b9b;--n-c-brown: #ba856f;--n-c-orange: #c77d48;--n-c-yellow: #ca9849;--n-c-green: #529e72;--n-c-blue: #5e87c9;--n-c-purple: #9d68d3;--n-c-pink: #d15796;--n-c-red: #df5452;--n-bg-gray: #2f2f2f;--n-bg-brown: #4a3228;--n-bg-orange: #5c3b23;--n-bg-yellow: #564328;--n-bg-green: #243d30;--n-bg-blue: #143a4e;--n-bg-purple: #3c2d49;--n-bg-pink: #4e2c3c;--n-bg-red: #522e2a;--n-tag-text: rgba(255, 255, 255, 0.81);--n-tag-default: #373737;--n-tag-gray: #5a5a5a;--n-tag-brown: #603b2c;--n-tag-orange: #854c1d;--n-tag-yellow: #89632a;--n-tag-green: #2b593f;--n-tag-blue: #28456c;--n-tag-purple: #492f64;--n-tag-pink: #69314c;--n-tag-red: #6e3630}@media(prefers-color-scheme: dark){:root:not([data-bs-theme]) .notion-page{--n-text: rgba(255, 255, 255, 0.81);--n-muted: #9b9b9b;--n-border: rgba(255, 255, 255, 0.13);--n-hover: rgba(255, 255, 255, 0.055);--n-header-bg: #252525;--n-code-text: #ff7369;--n-code-bg: rgba(135, 131, 120, 0.15);--n-check: #2383e2;--n-c-gray: #9b9b9b;--n-c-brown: #ba856f;--n-c-orange: #c77d48;--n-c-yellow: #ca9849;--n-c-green: #529e72;--n-c-blue: #5e87c9;--n-c-purple: #9d68d3;--n-c-pink: #d15796;--n-c-red: #df5452;--n-bg-gray: #2f2f2f;--n-bg-brown: #4a3228;--n-bg-orange: #5c3b23;--n-bg-yellow: #564328;--n-bg-green: #243d30;--n-bg-blue: #143a4e;--n-bg-purple: #3c2d49;--n-bg-pink: #4e2c3c;--n-bg-red: #522e2a;--n-tag-text: rgba(255, 255, 255, 0.81);--n-tag-default: #373737;--n-tag-gray: #5a5a5a;--n-tag-brown: #603b2c;--n-tag-orange: #854c1d;--n-tag-yellow: #89632a;--n-tag-green: #2b593f;--n-tag-blue: #28456c;--n-tag-purple: #492f64;--n-tag-pink: #69314c;--n-tag-red: #6e3630}}.notion-page .notion-c-gray{color:var(--n-c-gray)}.notion-page .notion-bg-gray{background:var(--n-bg-gray)}.notion-page .notion-tag.notion-tag-gray{background:var(--n-tag-gray)}.notion-page .notion-c-brown{color:var(--n-c-brown)}.notion-page .notion-bg-brown{background:var(--n-bg-brown)}.notion-page .notion-tag.notion-tag-brown{background:var(--n-tag-brown)}.notion-page .notion-c-orange{color:var(--n-c-orange)}.notion-page .notion-bg-orange{background:var(--n-bg-orange)}.notion-page .notion-tag.notion-tag-orange{background:var(--n-tag-orange)}.notion-page .notion-c-yellow{color:var(--n-c-yellow)}.notion-page .notion-bg-yellow{background:var(--n-bg-yellow)}.notion-page .notion-tag.notion-tag-yellow{background:var(--n-tag-yellow)}.notion-page .notion-c-green{color:var(--n-c-green)}.notion-page .notion-bg-green{background:var(--n-bg-green)}.notion-page .notion-tag.notion-tag-green{background:var(--n-tag-green)}.notion-page .notion-c-blue{color:var(--n-c-blue)}.notion-page .notion-bg-blue{background:var(--n-bg-blue)}.notion-page .notion-tag.notion-tag-blue{background:var(--n-tag-blue)}.notion-page .notion-c-purple{color:var(--n-c-purple)}.notion-page .notion-bg-purple{background:var(--n-bg-purple)}.notion-page .notion-tag.notion-tag-purple{background:var(--n-tag-purple)}.notion-page .notion-c-pink{color:var(--n-c-pink)}.notion-page .notion-bg-pink{background:var(--n-bg-pink)}.notion-page .notion-tag.notion-tag-pink{background:var(--n-tag-pink)}.notion-page .notion-c-red{color:var(--n-c-red)}.notion-page .notion-bg-red{background:var(--n-bg-red)}.notion-page .notion-tag.notion-tag-red{background:var(--n-tag-red)}.notion-page span[class^=notion-bg-]{border-radius:3px;padding:0 2px}.notion-page p[class^=notion-bg-],.notion-page h2[class^=notion-bg-],.notion-page h3[class^=notion-bg-],.notion-page h4[class^=notion-bg-],.notion-page h5[class^=notion-bg-]{border-radius:4px;padding:3px 4px}.notion-page .notion-underline{text-decoration:underline;text-underline-offset:2px}.notion-page :not(pre,.highlight)>code{color:var(--n-code-text);background:var(--n-code-bg);border-radius:4px;padding:.2em .4em;font-size:85%}.notion-page .notion-blank{height:1.25rem}.notion-page .notion-indent{padding-left:1.5rem}.notion-page blockquote{border-left:3px solid currentColor;padding-left:.9rem;color:inherit;font-size:1.1em}.notion-page li>p{margin-bottom:.25rem}.notion-page ol ol{list-style-type:lower-alpha}.notion-page ol ol ol{list-style-type:lower-roman}.notion-page ul ul{list-style-type:circle}.notion-page ul ul ul{list-style-type:square}.notion-page ul.task-list li{position:relative;padding-left:.25rem}.notion-page ul.task-list li>i{position:absolute;left:-1.25rem;top:.3rem;width:1rem;height:1rem;margin:0;font-size:0;border:1.5px solid var(--n-muted);border-radius:3px}.notion-page ul.task-list li>i.checked{background:var(--n-check) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M5.5 12.1 1 7.6l1.4-1.4 3.1 3.1L11.6 3.2 13 4.6z' fill='white'/%3E%3C/svg%3E") center/80% no-repeat;border-color:var(--n-check)}.notion-page ul.task-list li:has(>i.checked)>.notion-todo-text{color:var(--n-muted);text-decoration:line-through}.notion-page details.notion-toggle{margin:.25rem 0 .75rem}.notion-page details.notion-toggle>summary{position:relative;padding-left:1.6rem;cursor:pointer;list-style:none}.notion-page details.notion-toggle>summary::-webkit-details-marker{display:none}.notion-page details.notion-toggle>summary::before{content:"";position:absolute;left:.4rem;top:.5em;border-style:solid;border-width:.32em 0 .32em .52em;border-color:rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0) currentColor;transition:transform .15s ease}.notion-page details.notion-toggle>summary>h2,.notion-page details.notion-toggle>summary>h3,.notion-page details.notion-toggle>summary>h4,.notion-page details.notion-toggle>summary>h5{display:inline-block;margin:0}.notion-page details.notion-toggle[open]>summary::before{transform:rotate(90deg)}.notion-page details.notion-toggle>:not(summary){margin-left:1.6rem}.notion-page details.notion-toggle-heading{margin-top:2rem}.notion-page details.notion-toggle-heading>summary::before{top:.65em}.notion-page .notion-callout{display:flex;gap:.6rem;margin:.5rem 0 1rem;padding:1rem 1rem 1rem .85rem;border-radius:4px}.notion-page .notion-callout.notion-callout-plain{border:1px solid var(--n-border)}.notion-page .notion-callout>.notion-callout-icon{flex-shrink:0;width:1.5rem;font-size:1.2rem;line-height:1.5rem;text-align:center}.notion-page .notion-callout>.notion-callout-content{flex:1;min-width:0}.notion-page .notion-callout>.notion-callout-content>:last-child{margin-bottom:0}.notion-page .notion-icon-img{display:inline-block;width:1.2em;height:1.2em;vertical-align:-0.2em;background:center/contain no-repeat}.notion-page .notion-columns{display:flex;gap:2rem;margin-bottom:1rem}.notion-page .notion-columns>.notion-column{min-width:0}.notion-page .notion-columns>.notion-column>:first-child{margin-top:0}.notion-page .notion-columns>.notion-column>:last-child{margin-bottom:0}@media(max-width: 767.98px){.notion-page .notion-columns{flex-direction:column;gap:0}}.notion-page .table-wrapper>table.notion-table{width:100%;border-collapse:collapse;margin-bottom:0}.notion-page .table-wrapper>table.notion-table th,.notion-page .table-wrapper>table.notion-table td{border:1px solid var(--n-border);padding:.45rem .6rem;vertical-align:top;white-space:normal;min-width:6rem}.notion-page .table-wrapper>table.notion-table th.notion-db-td-date,.notion-page .table-wrapper>table.notion-table th.notion-db-td-created_time,.notion-page .table-wrapper>table.notion-table th.notion-db-td-last_edited_time,.notion-page .table-wrapper>table.notion-table td.notion-db-td-date,.notion-page .table-wrapper>table.notion-table td.notion-db-td-created_time,.notion-page .table-wrapper>table.notion-table td.notion-db-td-last_edited_time{white-space:nowrap}.notion-page .table-wrapper>table.notion-table thead th,.notion-page .table-wrapper>table.notion-table tbody th{background:var(--n-header-bg);font-weight:600}.notion-page .table-wrapper>table.notion-table tbody tr{background:none}.notion-page .notion-db{margin:1.5rem 0}.notion-page .notion-db .notion-db-title{font-size:1.25rem;font-weight:700;margin-bottom:.5rem}.notion-page .notion-db .notion-db-view{font-size:.875rem;color:var(--n-muted);margin:.75rem 0 .25rem}.notion-page .notion-db table.notion-db-table{border-left:0;border-right:0}.notion-page .notion-db table.notion-db-table thead th{background:none;color:var(--n-muted);font-weight:500;font-size:.875rem}.notion-page .notion-db table.notion-db-table th:first-child,.notion-page .notion-db table.notion-db-table td:first-child{border-left:0}.notion-page .notion-db table.notion-db-table th:last-child,.notion-page .notion-db table.notion-db-table td:last-child{border-right:0}.notion-page .notion-db .notion-db-row-title{font-weight:500}.notion-page .notion-db .notion-db-relation{border-bottom:1px solid var(--n-border);margin-right:.4rem}.notion-page .notion-tag{display:inline-block;margin:0 .3rem .2rem 0;padding:0 .4rem;border-radius:3px;font-size:.85em;line-height:1.5;white-space:nowrap;color:var(--n-tag-text);background:var(--n-tag-default)}.notion-page .notion-checkbox{display:inline-block;width:1rem;height:1rem;vertical-align:-0.15rem;border:1.5px solid var(--n-muted);border-radius:3px}.notion-page .notion-checkbox.checked{background:var(--n-check) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 14 14'%3E%3Cpath d='M5.5 12.1 1 7.6l1.4-1.4 3.1 3.1L11.6 3.2 13 4.6z' fill='white'/%3E%3C/svg%3E") center/80% no-repeat;border-color:var(--n-check)}.notion-page .notion-caption{margin-top:.35rem;font-size:.85rem;color:var(--n-muted)}.notion-page pre+.notion-caption,.notion-page div.highlighter-rouge+.notion-caption{margin-top:-0.75rem;margin-bottom:1rem}.notion-page .notion-media,.notion-page .notion-embed,.notion-page .notion-bookmark-wrap{margin:.5rem 0 1.25rem}.notion-page .notion-media .embed-video,.notion-page .notion-embed .embed-video,.notion-page .notion-bookmark-wrap .embed-video{margin-bottom:0}.notion-page .notion-embed-frame,.notion-page .notion-pdf{display:block;width:100%;height:30rem;border:1px solid var(--n-border);border-radius:4px}.notion-page .notion-embed-spotify{height:22rem;border:0}.notion-page .notion-pdf{height:40rem;margin-bottom:.25rem}.notion-page a.notion-file{display:flex;align-items:center;gap:.5rem;padding:.3rem .4rem;border:0;border-radius:4px;color:var(--n-text)}.notion-page a.notion-file:hover{background:var(--n-hover)}.notion-page a.notion-file .notion-file-icon::before{content:"";font:var(--fa-font-solid);color:var(--n-muted)}.notion-page a.notion-file .notion-file-size{font-size:.8rem;color:var(--n-muted)}.notion-page a.notion-bookmark{display:flex;overflow:hidden;min-height:6.6rem;border:1px solid var(--n-border) !important;border-radius:4px;color:var(--n-text) !important;text-decoration:none}.notion-page a.notion-bookmark:hover{background:var(--n-hover)}.notion-page a.notion-bookmark .notion-bookmark-text{flex:4 1 180px;min-width:0;padding:.75rem .9rem .85rem}.notion-page a.notion-bookmark .notion-bookmark-title{font-size:.875rem;line-height:1.4;margin-bottom:.25rem;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.notion-page a.notion-bookmark .notion-bookmark-desc{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:.75rem;line-height:1.5;color:var(--n-muted);margin-bottom:.5rem}.notion-page a.notion-bookmark .notion-bookmark-url{display:flex;align-items:center;gap:.4rem;font-size:.75rem}.notion-page a.notion-bookmark .notion-bookmark-url>span:last-child{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.notion-page a.notion-bookmark .notion-bookmark-icon{flex-shrink:0;width:16px;height:16px;background:center/contain no-repeat}.notion-page a.notion-bookmark .notion-bookmark-cover{flex:1 1 180px;position:relative;min-height:6.6rem;background:center/cover no-repeat}@media(max-width: 575.98px){.notion-page a.notion-bookmark .notion-bookmark-cover{display:none}}.notion-page a.notion-page-link{display:flex;align-items:center;gap:.4rem;margin:.15rem 0;padding:.2rem .3rem;border:0;border-radius:4px;color:var(--n-text)}.notion-page a.notion-page-link:hover{background:var(--n-hover)}.notion-page a.notion-page-link .notion-page-link-title{font-weight:500;border-bottom:1px solid var(--n-border)}.notion-page a.notion-page-link .notion-page-link-doc::before,.notion-page a.notion-page-link .notion-page-link-db::before{font:var(--fa-font-regular);color:var(--n-muted)}.notion-page a.notion-page-link .notion-page-link-doc::before{content:""}.notion-page a.notion-page-link .notion-page-link-db::before{font:var(--fa-font-solid);content:""}.notion-page nav.notion-toc{display:flex;flex-direction:column;margin:.5rem 0 1.25rem}.notion-page nav.notion-toc a.notion-toc-item{padding-top:.2rem;padding-bottom:.2rem;border:0;border-radius:3px;font-size:.875rem;color:var(--n-muted);text-decoration:underline;text-decoration-color:var(--n-border);text-underline-offset:3px}.notion-page nav.notion-toc a.notion-toc-item:hover{background:var(--n-hover)}*{box-sizing:border-box}html{scroll-padding-top:82px}body{margin:0;background:var(--page);color:var(--text);font:15px/1.65 -apple-system,BlinkMacSystemFont,"Apple SD Gothic Neo","Malgun Gothic",sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input{font:inherit}button,summary{cursor:pointer}button{color:inherit}h1,h2,h3,h4,p{margin:0}h1,h2,h3,h4{line-height:1.4;word-break:keep-all;overflow-wrap:anywhere}a:focus-visible,button:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--focus);outline-offset:4px}svg{width:19px;height:19px;flex-shrink:0;vertical-align:middle}[hidden]{display:none !important}.sr-only{position:absolute;width:1px;height:1px;clip:rect(0, 0, 0, 0);overflow:hidden}.skip-link{position:fixed;top:-70px;left:15px;z-index:50;background:var(--page);padding:10px}.skip-link:focus{top:5px}.sidebar{position:fixed;top:0;bottom:0;left:0;width:272px;padding:30px 18px 22px;background:var(--sidebar);border-right:1px solid var(--border);overflow:auto;display:flex;flex-direction:column;z-index:20}.sidebar>.brand{padding:0 14px;margin-bottom:30px}.side-links{display:flex;flex-direction:column;gap:3px}.side-links a{font-size:13px;padding:8px 14px;border-radius:4px}.side-links .active{background:var(--surface);font-weight:600}.side-links a:hover,.tree-post:hover{background:var(--surface)}.nav-heading{font-size:11px;font-weight:500;color:var(--muted);padding:0 14px;margin:30px 0 10px}.category-tree{font-size:12px}.tree-folder>summary{list-style:none;display:flex;align-items:center;gap:8px;min-height:38px;padding:6px 10px;border-radius:4px;line-height:1.6}.tree-folder>summary::-webkit-details-marker{display:none}.tree-folder>summary:hover{background:var(--surface)}.tree-folder>summary>svg{width:12px;height:12px;color:var(--muted)}.tree-folder[open]>summary>svg{transform:rotate(90deg)}.tree-folder>summary>span{flex:1;min-width:0;overflow-wrap:anywhere}.tree-folder>summary>small{font-size:10px;color:var(--muted);margin-left:auto}.tree-children{margin-left:15px;border-left:1px solid var(--border);padding-left:4px}.tree-post{display:flex;gap:7px;align-items:flex-start;font-size:11px;line-height:1.65;padding:9px 8px;border-radius:4px}.tree-post svg{width:13px;height:15px;margin-top:2px;color:var(--muted)}.tree-post span{min-width:0;overflow-wrap:anywhere}.tree-post[aria-current]{background:var(--selected);color:var(--link);font-weight:600}.github{margin:30px 14px 0;padding-top:20px;border-top:1px solid var(--border);color:var(--muted);font-size:11px}.site-shell{margin-left:272px}.content-header{height:70px;padding:0 34px;display:flex;align-items:center;gap:14px;border-bottom:1px solid var(--border);background:var(--page);font-size:12px;color:var(--muted)}.icon-button{display:grid;place-content:center;width:32px;height:32px;border:1px solid var(--border);border-radius:5px;background:var(--page);color:var(--muted)}.icon-button:hover{background:var(--surface)}.sidebar-collapsed .site-shell{margin-left:60px}main{margin:0;padding:51px clamp(48px,7vw,118px) 70px}main:focus{outline:0}.list-heading{display:flex;align-items:center;justify-content:space-between;gap:25px;padding-bottom:25px;border-bottom:1px solid var(--border)}.list-heading h1{font-size:25px;font-weight:650;letter-spacing:-0.6px}.list-heading h1>span{margin-left:9px;font-size:13px;color:var(--muted);font-weight:400;vertical-align:middle}.search{width:205px;height:35px;display:flex;align-items:center;gap:8px;border-bottom:1px solid var(--border);color:var(--muted)}.search svg{width:15px;height:15px}.search input{width:100%;min-width:0;border:0;background:none;font-size:12px;color:var(--text);padding:6px 0}.search input::placeholder{color:var(--muted)}.post-row{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:25px 0;border-bottom:1px solid var(--border)}.post-row>div{min-width:0}.post-path{font-size:10px;color:var(--muted);margin-bottom:8px;overflow-wrap:anywhere}.post-row h2{font-size:19px;letter-spacing:-0.45px;font-weight:600}.post-row time{font-size:11px;color:var(--muted);white-space:nowrap}.post-row:hover h2{text-decoration:underline;text-underline-offset:5px}.post-row:hover{background:var(--hover)}.empty{padding:65px 0;color:var(--muted);font-size:14px}.empty button{display:block;padding:0;background:none;border:0;text-decoration:underline;font-size:12px;margin-top:15px}.loading{padding:50px}.reader-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:30px;font-size:11px;color:var(--muted)}.reader-nav>a{white-space:nowrap;color:var(--secondary)}.reader-nav>span{overflow-wrap:anywhere;text-align:right}.reading-layout{display:grid;grid-template-columns:minmax(0, 1fr) 165px;gap:40px}.reader{min-width:0}.article-header{padding:0 0 28px;border-bottom:1px solid var(--border);margin-bottom:32px}.article-header h1{font-size:30px;letter-spacing:-0.8px;margin-bottom:15px}.article-header time{font-size:11px;color:var(--muted)}.toc{align-self:start;position:sticky;top:80px;border-left:1px solid var(--border);padding-left:18px;font-size:11px;max-height:calc(100vh - 110px);overflow:auto}.toc summary{font-weight:600;margin-bottom:16px}.toc nav{display:flex;flex-direction:column;gap:13px;color:var(--muted)}.toc a:hover{color:var(--text)}.article-content{font-size:15px;line-height:1.95;overflow-wrap:anywhere}.article-content h2{font-size:25px;margin:38px 0 17px}.article-content h3{font-size:22px;margin:30px 0 16px}.article-content h4{font-size:18px;margin:26px 0 15px}.article-content p,.article-content ul,.article-content ol{margin:17px 0}.article-content li>p{margin:6px 0}.article-content a{color:var(--link);text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.article-content img{display:block;max-width:100%;height:auto;margin:24px auto;border:1px solid var(--border);border-radius:3px}.article-content .notion-blank{height:4px}.article-content blockquote{border-left:3px solid var(--border);margin:22px 0;padding:10px 20px;color:var(--secondary)}.article-content table{display:block;max-width:100%;overflow:auto;border-collapse:collapse;font-size:12px;margin:20px 0}.article-content td,.article-content th{border:1px solid var(--border);padding:9px 12px;text-align:left;min-width:85px}.article-content th{background:var(--surface)}.article-content pre{overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:4px;padding:16px;font-size:12px;line-height:1.8}.article-content code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.85em}.article-content p code,.article-content li>code{background:var(--surface);border-radius:3px;padding:2px 4px}.article-content .highlight{max-width:100%;overflow:auto}.article-content .highlight td{border:0;padding:0;min-width:0}.article-content .highlight table{margin:0}.article-content .highlight pre{border:0;padding:0;margin:0;border-radius:0}.article-content .rouge-gutter{padding-right:15px !important;color:var(--muted)}.article-content .notion-callout{padding:14px;background:var(--surface)}.article-content .notion-table-wrapper{overflow:auto}.about>h1{font-size:25px;margin-bottom:30px}.profile-hero h2{font-size:24px;margin-top:8px}.profile-kicker{font-size:11px;color:var(--muted)}.profile-section{margin-top:44px}.profile-section-title{display:flex;align-items:baseline;gap:16px;padding-bottom:14px}.profile-section-title h2{font-size:18px}.profile-section-title p{font-size:10px;color:var(--muted)}.profile-records{list-style:none;padding:0;margin:0}.profile-records>li{display:grid;grid-template-columns:120px 1fr;align-items:baseline;gap:24px;padding:10px 0}.profile-records time{font-size:11px;color:var(--muted)}.profile-records h3{font-size:15px}.profile-records h3 span{font-size:12px;color:var(--muted);font-weight:400}.profile-records h3 span{margin-left:6px}.profile-contacts{display:flex;flex-wrap:wrap;gap:16px;margin-top:30px;font-size:12px;color:var(--link)}.post-index{max-width:1200px;margin-inline:auto}.reading-layout,.reader-nav,main>article{max-width:1040px;margin-inline:auto}.reading-layout:has(.toc[hidden]){max-width:800px}.content-header{padding-inline:clamp(48px,7vw,118px)}@media(max-width: 1100px){.sidebar{width:248px;padding-left:12px;padding-right:12px}.site-shell{margin-left:248px}main{padding:40px 32px 60px}.reading-layout{grid-template-columns:1fr}.toc{grid-row:1;position:static;border:1px solid var(--border);border-radius:4px;padding:13px 16px;max-height:190px}.toc nav{flex-direction:row;flex-wrap:wrap;gap:8px 16px}.toc summary{margin-bottom:10px}}@media(max-width: 420px){.list-heading{align-items:flex-start}.list-heading h1{font-size:21px;white-space:nowrap}.list-heading h1>span{font-size:11px;margin-left:5px}.search{width:120px;height:30px}.post-row{align-items:flex-start}.post-row h2{font-size:17px}.post-row time{padding-top:2px}.header-nav{gap:16px;font-size:11px}.site-header{gap:15px}.brand{font-size:20px}.reader-nav>span{max-width:65%}.article-header h1{font-size:25px}}:root{--main-border-color:var(--border);--text-muted-color:var(--muted)}.sidebar{padding-top:24px}.sidebar-top{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 0 30px;padding:0 10px}.brand{font-size:22px;font-weight:700;letter-spacing:-0.8px;white-space:nowrap}.icon-button{flex-shrink:0;width:36px;height:36px}.sidebar-collapsed .sidebar{width:60px;padding-left:12px;padding-right:12px;overflow:hidden}.sidebar-collapsed .sidebar-top{padding:0;margin:0}.sidebar-collapsed .brand{display:none}.github{display:block}.tree-chevron{font-size:21px;color:var(--muted);line-height:1;width:12px;flex:none !important;transition:transform .12s}.tree-folder[open]>summary>.tree-chevron{transform:rotate(90deg)}.article-content>:first-child{margin-top:0}.article-content pre code{white-space:pre}.article-content .highlight pre{padding:16px}.article-content .highlight pre.lineno{padding-right:8px}.article-content .highlight .rouge-code pre{padding-left:8px}.article-content .notion-page{min-width:0}.toc a[data-level="3"]{padding-left:10px}.toc a[data-level="4"]{padding-left:20px}.article-content h2,.article-content h3,.article-content h4{scroll-margin-top:24px}.article-content iframe{max-width:100%}.reading-layout:has(.toc[hidden]){grid-template-columns:1fr}.content ul{padding-left:22px}.content li{margin:8px 0}.dynamic-title{font-size:25px;margin-bottom:30px}.profile-hero{padding-bottom:8px}.content .profile-records>li{margin:0}.profile-records ul{font-size:13px;color:var(--muted);margin:8px 0}.profile-footer{margin-top:30px;padding-top:20px;border-top:1px solid var(--border)}.profile-hero h2{margin-bottom:10px}.profile-contacts{margin-top:16px}.profile-section-title p{margin-left:auto}.pagination{display:flex;justify-content:center;gap:25px;font-size:13px;padding:30px 0}.list-unstyled{list-style:none;padding:0}.list-unstyled li{padding:12px 0;border-bottom:1px solid var(--border);display:flex;gap:18px}.text-muted{color:var(--muted)}.small{font-size:12px}#tags{display:flex;gap:16px;flex-wrap:wrap}.tag{display:block;padding:8px 0}.year{display:block;margin:30px 0 10px;font-size:20px}#page-category h1,#page-tag h1{margin-bottom:25px}.highlight .k,.highlight .kd,.highlight .kn,.highlight .kc{color:var(--code-purple)}.highlight .s,.highlight .s1,.highlight .s2{color:var(--code-green)}.highlight .c,.highlight .c1,.highlight .cm{color:var(--code-comment)}.highlight .nf,.highlight .nb{color:var(--code-blue)}.highlight .mi,.highlight .mf{color:var(--code-number)}@media(max-width: 760px){.sidebar{top:0;width:min(280px,100vw);padding:20px 12px;z-index:30}.sidebar-top{padding:0 8px}.site-shell{margin-left:60px}.sidebar-collapsed .site-shell{margin-left:60px}body:not(.sidebar-collapsed) .site-shell{visibility:hidden}.content-header{height:76px;padding:0 20px}.sidebar:not(.sidebar-collapsed){box-shadow:none}main{padding:28px 20px 50px}.list-heading{flex-wrap:wrap;gap:16px}.search{width:100%;max-width:205px}.post-row{display:block;padding:22px 0}.post-row time{display:block;margin-top:9px}.reading-layout{gap:24px}.profile-records>li{grid-template-columns:1fr;gap:7px}.profile-section-title{flex-wrap:wrap;gap:7px}.profile-section-title p{margin-left:0}.profile-records h3 span{display:block;margin:5px 0 0}.article-header h1{font-size:25px}.article-content h2{font-size:22px}.article-content h3{font-size:19px}.reader-nav{flex-wrap:wrap}.reader-nav>span{max-width:100%;text-align:left}}:root{color-scheme:light;--page:#fff;--sidebar:#fafafa;--text:#24272c;--muted:#737b86;--secondary:#505965;--border:#e5e7eb;--surface:#f0f2f5;--hover:#fcfcfd;--selected:#e9eef5;--link:#365f93;--focus:#4b6d9d;--code-purple:#a626a4;--code-green:#4b701b;--code-comment:#7d8490;--code-blue:#245daa;--code-number:#986801}:root[data-bs-theme=dark]{color-scheme:dark;--page:#191b1e;--sidebar:#202226;--text:#e1e3e6;--muted:#a2a8b1;--secondary:#b8bec7;--border:#363a40;--surface:#282c32;--hover:#22252a;--selected:#303e50;--link:#9cbee8;--focus:#9cbee8;--code-purple:#d7a1e5;--code-green:#b4ce8b;--code-comment:#a2a8b1;--code-blue:#9cbee8;--code-number:#e5bf85}.sidebar{overflow:hidden}.sidebar-top{flex-shrink:0}#sidebar-body{flex:1;min-height:0;overflow-y:auto}.sidebar-footer{margin-top:auto;padding-top:16px;flex-shrink:0}.theme-toggle{display:flex;align-items:center;gap:10px;width:100%;min-height:36px;padding:8px 12px;background:rgba(0,0,0,0);border:0;border-top:1px solid var(--border);font-size:12px;text-align:left;border-radius:0}.theme-toggle:hover{background:var(--surface)}.theme-toggle svg{width:17px;height:17px}.theme-sun{display:none}:root[data-bs-theme=dark] .theme-sun{display:block}:root[data-bs-theme=dark] .theme-moon{display:none}.sidebar-collapsed .theme-toggle{padding:8px;justify-content:center}.sidebar-collapsed .theme-label{display:none}@media(min-width: 761px){.sidebar .brand{font-size:24px}.sidebar .side-links a{font-size:15px;padding-block:10px}.sidebar .nav-heading{font-size:12px}.sidebar .category-tree{font-size:14px}.sidebar .tree-folder>summary{min-height:42px}.sidebar .tree-folder>summary>small{font-size:11px}.sidebar .tree-post{font-size:13px;padding-block:10px}.sidebar .github{font-size:13px}.sidebar .theme-toggle{font-size:14px;min-height:40px}.sidebar .icon-button svg,.sidebar .theme-toggle svg{width:20px;height:20px}}.sidebar .side-links{gap:6px;padding-bottom:18px;border-bottom:1px solid var(--border)}.sidebar .side-links a{display:flex;align-items:center;gap:12px;min-height:46px;padding:10px 14px;font-size:16px;font-weight:650;line-height:1.5;color:var(--text)}.sidebar .side-links svg{width:20px;height:20px}.sidebar .side-links a.active{background:var(--selected);color:var(--link);box-shadow:inset 3px 0 var(--link)}.tree-more{display:block;padding:10px 8px;font-size:12px;color:var(--link);text-decoration:underline;text-underline-offset:3px}/*# sourceMappingURL=blog.css.map */