.toc[data-astro-cid-obewoz47]{position:fixed;top:120px;right:var(--spacing-lg);z-index:100;width:280px;max-height:calc(100vh - 140px)}.toc__toggle[data-astro-cid-obewoz47]{display:flex;align-items:center;gap:var(--spacing-sm);font-family:var(--font-sans);font-size:var(--font-size-sm);font-weight:700;text-transform:uppercase;letter-spacing:.05em;padding:var(--spacing-sm) var(--spacing-md);border:var(--border-width) solid var(--border-color);background-color:var(--accent);color:#000;cursor:pointer;box-shadow:4px 4px 0 var(--shadow-color);transition:transform var(--transition-fast),box-shadow var(--transition-fast);width:100%;justify-content:flex-start}.toc__toggle[data-astro-cid-obewoz47]:hover{transform:translate(-2px,-2px);box-shadow:6px 6px 0 var(--shadow-color)}.toc__toggle[data-astro-cid-obewoz47]:active{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--shadow-color)}.toc__toggle-icon[data-astro-cid-obewoz47]{display:flex;align-items:center;justify-content:center;transition:transform var(--transition-normal)}.toc[data-astro-cid-obewoz47][data-collapsed=true] .toc__toggle-icon[data-astro-cid-obewoz47]{transform:rotate(90deg)}.toc__nav[data-astro-cid-obewoz47]{margin-top:var(--spacing-sm);background-color:var(--bg-primary);border:var(--border-width) solid var(--border-color);box-shadow:4px 4px 0 var(--shadow-color);overflow-y:auto;max-height:calc(70vh - 60px);transition:opacity var(--transition-normal),visibility var(--transition-normal)}.toc[data-astro-cid-obewoz47][data-collapsed=true] .toc__nav[data-astro-cid-obewoz47]{opacity:0;visibility:hidden;height:0;margin-top:0;border:none;box-shadow:none}.toc__list[data-astro-cid-obewoz47]{list-style:none;padding:var(--spacing-sm);margin:0}.toc__item[data-astro-cid-obewoz47]{margin:0}.toc__item--depth-3[data-astro-cid-obewoz47]{padding-left:var(--spacing-md)}.toc__link[data-astro-cid-obewoz47]{display:block;padding:var(--spacing-xs) var(--spacing-sm);font-size:var(--font-size-sm);color:var(--text-secondary);text-decoration:none;border-left:3px solid transparent;transition:all var(--transition-fast);line-height:var(--line-height-normal)}.toc__link[data-astro-cid-obewoz47]:hover{color:var(--text-primary);background-color:var(--bg-secondary);border-left-color:var(--accent)}.toc__link[data-astro-cid-obewoz47][data-active=true]{color:#000;background-color:var(--accent);border-left-color:var(--border-color);font-weight:700}@media(max-width:1200px){.toc[data-astro-cid-obewoz47]{right:var(--spacing-md);width:240px}}@media(max-width:1024px){.toc[data-astro-cid-obewoz47]{display:none}}.comments[data-astro-cid-jvxsf75u]{margin-top:var(--spacing-3xl);padding-top:var(--spacing-xl);border-top:var(--border-width) solid var(--border-color)}.comments__title[data-astro-cid-jvxsf75u]{font-size:var(--font-size-xl);margin-bottom:var(--spacing-lg);color:var(--text-primary)}.giscus-container[data-astro-cid-jvxsf75u]{min-height:150px}.comments--placeholder[data-astro-cid-jvxsf75u]{background-color:var(--bg-secondary);padding:var(--spacing-lg);border:2px dashed var(--border-color)}.comments__notice[data-astro-cid-jvxsf75u]{margin:0 0 var(--spacing-sm);color:var(--text-secondary)}.comments__notice[data-astro-cid-jvxsf75u] code[data-astro-cid-jvxsf75u]{background-color:var(--bg-primary);padding:2px 6px;border-radius:4px;font-size:var(--font-size-sm)}.comments__link[data-astro-cid-jvxsf75u]{margin:0}.comments__link[data-astro-cid-jvxsf75u] a[data-astro-cid-jvxsf75u]{color:var(--accent);text-decoration:none}.comments__link[data-astro-cid-jvxsf75u] a[data-astro-cid-jvxsf75u]:hover{text-decoration:underline}.view-count[data-astro-cid-4ehrw4m3]{display:inline-flex;align-items:center;gap:var(--spacing-xs);font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--text-muted)}.view-count__icon[data-astro-cid-4ehrw4m3]{opacity:.7}.view-count__number[data-astro-cid-4ehrw4m3]{font-weight:600}.view-count__label[data-astro-cid-4ehrw4m3]{opacity:.8}.post[data-astro-cid-gjtny2mx]{animation:fadeIn .4s ease}.post__header[data-astro-cid-gjtny2mx]{max-width:var(--content-width);margin:0 auto var(--spacing-3xl);padding:0 var(--spacing-lg) var(--spacing-xl);border-bottom:var(--border-width) solid var(--border-color)}.post__meta[data-astro-cid-gjtny2mx]{display:flex;flex-wrap:wrap;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.post__date[data-astro-cid-gjtny2mx]{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--text-secondary);background-color:var(--bg-secondary);padding:var(--spacing-xs) var(--spacing-sm);border:2px solid var(--border-color)}.post__reading-time[data-astro-cid-gjtny2mx]{font-family:var(--font-mono);font-size:var(--font-size-sm);color:var(--text-muted)}.post__lang-selector[data-astro-cid-gjtny2mx]{display:flex;align-items:center;gap:2px;font-family:var(--font-mono);font-size:var(--font-size-xs)}.lang-current[data-astro-cid-gjtny2mx]{padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--accent);color:#000;font-weight:700;border:2px solid var(--border-color)}.lang-option[data-astro-cid-gjtny2mx]{padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--bg-secondary);color:var(--text-primary);text-decoration:none;font-weight:600;border:2px solid var(--border-color);transition:transform var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}.lang-option[data-astro-cid-gjtny2mx]:hover{transform:translate(-1px,-1px);box-shadow:2px 2px 0 var(--shadow-color);background-color:var(--accent);color:#000}.post__tags[data-astro-cid-gjtny2mx]{display:flex;flex-wrap:wrap;gap:var(--spacing-sm);margin-bottom:var(--spacing-xl)}.tag[data-astro-cid-gjtny2mx]{display:inline-block;padding:var(--spacing-xs) var(--spacing-sm);text-decoration:none;border:2px solid;box-shadow:2px 2px #00000026;font-weight:600;font-size:var(--font-size-sm);text-transform:lowercase;transition:transform var(--transition-fast),box-shadow var(--transition-fast)}.tag[data-astro-cid-gjtny2mx]:hover{transform:translate(-1px,-1px);box-shadow:3px 3px #00000040}.post__title[data-astro-cid-gjtny2mx]{font-size:var(--font-size-4xl);margin-bottom:var(--spacing-md)}.post__description[data-astro-cid-gjtny2mx]{font-size:var(--font-size-xl);color:var(--text-secondary);line-height:var(--line-height-relaxed);margin:0}.post__content[data-astro-cid-gjtny2mx]{max-width:var(--content-width);margin:0 auto;padding:0 var(--spacing-lg);font-size:var(--font-size-lg);line-height:var(--line-height-relaxed);min-width:0;overflow-wrap:break-word;word-break:break-word}.post__content[data-astro-cid-gjtny2mx] h2{margin-top:var(--spacing-3xl);margin-bottom:var(--spacing-lg);padding-bottom:var(--spacing-sm);border-bottom:3px solid var(--accent)}.post__content[data-astro-cid-gjtny2mx] h3{margin-top:var(--spacing-2xl);margin-bottom:var(--spacing-md)}.post__content[data-astro-cid-gjtny2mx] h4,.post__content[data-astro-cid-gjtny2mx] h5,.post__content[data-astro-cid-gjtny2mx] h6{margin-top:var(--spacing-xl);margin-bottom:var(--spacing-md)}.post__content[data-astro-cid-gjtny2mx] p{margin-bottom:var(--spacing-lg)}.post__content[data-astro-cid-gjtny2mx] ul,.post__content[data-astro-cid-gjtny2mx] ol{margin-bottom:var(--spacing-lg);padding-left:var(--spacing-xl)}.post__content[data-astro-cid-gjtny2mx] li{margin-bottom:var(--spacing-sm)}.post__content[data-astro-cid-gjtny2mx] li::marker{color:var(--accent);font-weight:700}.post__content[data-astro-cid-gjtny2mx] img{max-width:100%;height:auto;border:var(--border-width) solid var(--border-color);box-shadow:6px 6px 0 var(--shadow-color);margin:var(--spacing-xl) 0}.post__content[data-astro-cid-gjtny2mx] hr{border:none;height:var(--border-width);background-color:var(--border-color);margin:var(--spacing-2xl) 0}.post__content[data-astro-cid-gjtny2mx] table{width:100%;border-collapse:collapse;margin:var(--spacing-xl) 0;border:var(--border-width) solid var(--border-color);box-shadow:4px 4px 0 var(--shadow-color)}.post__content[data-astro-cid-gjtny2mx] th,.post__content[data-astro-cid-gjtny2mx] td{padding:var(--spacing-sm) var(--spacing-md);border:2px solid var(--border-color);text-align:left}.post__content[data-astro-cid-gjtny2mx] th{background-color:var(--accent);color:#000;font-weight:700;text-transform:uppercase}.post__content[data-astro-cid-gjtny2mx] tr:nth-child(2n){background-color:var(--bg-secondary)}.post__comments[data-astro-cid-gjtny2mx]{max-width:var(--content-width);margin:0 auto;padding:0 var(--spacing-lg)}.post__footer[data-astro-cid-gjtny2mx]{max-width:var(--content-width);margin:var(--spacing-3xl) auto 0;padding:var(--spacing-xl) var(--spacing-lg) 0;border-top:var(--border-width) solid var(--border-color)}.back-to-list[data-astro-cid-gjtny2mx]{display:inline-flex;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-xs) var(--spacing-sm);text-decoration:none;border:2px solid var(--border-color);background-color:var(--bg-secondary);color:var(--text-primary);box-shadow:2px 2px #00000026;font-weight:600;font-size:var(--font-size-sm);transition:transform var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}.back-to-list[data-astro-cid-gjtny2mx]:hover{transform:translate(-1px,-1px);box-shadow:3px 3px #00000040;background-color:var(--accent);color:#000}.back-to-list[data-astro-cid-gjtny2mx] svg[data-astro-cid-gjtny2mx]{transition:transform var(--transition-fast)}.back-to-list[data-astro-cid-gjtny2mx]:hover svg[data-astro-cid-gjtny2mx]{transform:translate(-2px)}@media(max-width:768px){.post__title[data-astro-cid-gjtny2mx]{font-size:var(--font-size-3xl)}.post__description[data-astro-cid-gjtny2mx]{font-size:var(--font-size-lg)}.post__content[data-astro-cid-gjtny2mx]{font-size:var(--font-size-base)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.post__category[data-astro-cid-gjtny2mx]{font-family:var(--font-mono);font-size:var(--font-size-sm);padding:var(--spacing-xs) var(--spacing-sm);background-color:var(--bg-secondary);color:var(--text-secondary);border:2px solid var(--border-color);text-decoration:none;transition:transform var(--transition-fast),box-shadow var(--transition-fast),background-color var(--transition-fast)}.post__category[data-astro-cid-gjtny2mx]:hover{transform:translate(-1px,-1px);box-shadow:2px 2px 0 var(--shadow-color);background-color:var(--accent);color:#000}
