@font-face{font-family:'Fraunces';font-style:normal;font-weight:500;font-display:swap;src:url("/static/fonts/fraunces-500-latin-ext-1.9cab501e1829.woff2?f3e5a2072933") format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Fraunces';font-style:normal;font-weight:500;font-display:swap;src:url("/static/fonts/fraunces-500-latin-2.eb2486760f75.woff2?f3e5a2072933") format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'Fraunces';font-style:normal;font-weight:600;font-display:swap;src:url("/static/fonts/fraunces-600-latin-ext-3.9cab501e1829.woff2?f3e5a2072933") format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'Fraunces';font-style:normal;font-weight:600;font-display:swap;src:url("/static/fonts/fraunces-600-latin-4.eb2486760f75.woff2?f3e5a2072933") format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url("/static/fonts/ibm-plex-sans-400-cyrillic-ext-5.141776be1c70.woff2?f3e5a2072933") format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url("/static/fonts/ibm-plex-sans-400-cyrillic-6.70800b98b5e7.woff2?f3e5a2072933") format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url("/static/fonts/ibm-plex-sans-400-latin-ext-7.f0e2925b3fa6.woff2?f3e5a2072933") format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:400;font-stretch:100%;font-display:swap;src:url("/static/fonts/ibm-plex-sans-400-latin-8.b2c9031d9fd6.woff2?f3e5a2072933") format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url("/static/fonts/ibm-plex-sans-500-cyrillic-ext-9.141776be1c70.woff2?f3e5a2072933") format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url("/static/fonts/ibm-plex-sans-500-cyrillic-10.70800b98b5e7.woff2?f3e5a2072933") format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url("/static/fonts/ibm-plex-sans-500-latin-ext-11.f0e2925b3fa6.woff2?f3e5a2072933") format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:500;font-stretch:100%;font-display:swap;src:url("/static/fonts/ibm-plex-sans-500-latin-12.b2c9031d9fd6.woff2?f3e5a2072933") format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url("/static/fonts/ibm-plex-sans-600-cyrillic-ext-13.141776be1c70.woff2?f3e5a2072933") format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url("/static/fonts/ibm-plex-sans-600-cyrillic-14.70800b98b5e7.woff2?f3e5a2072933") format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url("/static/fonts/ibm-plex-sans-600-latin-ext-15.f0e2925b3fa6.woff2?f3e5a2072933") format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'IBM Plex Sans';font-style:normal;font-weight:600;font-stretch:100%;font-display:swap;src:url("/static/fonts/ibm-plex-sans-600-latin-16.b2c9031d9fd6.woff2?f3e5a2072933") format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url("/static/fonts/jetbrains-mono-400-cyrillic-ext-17.3ae0dad237c5.woff2?f3e5a2072933") format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url("/static/fonts/jetbrains-mono-400-cyrillic-18.3576e677eb07.woff2?f3e5a2072933") format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url("/static/fonts/jetbrains-mono-400-latin-ext-19.bd4781a31b42.woff2?f3e5a2072933") format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400;font-display:swap;src:url("/static/fonts/jetbrains-mono-400-latin-20.b636a65da4f0.woff2?f3e5a2072933") format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url("/static/fonts/jetbrains-mono-500-cyrillic-ext-21.3ae0dad237c5.woff2?f3e5a2072933") format('woff2');unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url("/static/fonts/jetbrains-mono-500-cyrillic-22.3576e677eb07.woff2?f3e5a2072933") format('woff2');unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url("/static/fonts/jetbrains-mono-500-latin-ext-23.bd4781a31b42.woff2?f3e5a2072933") format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:500;font-display:swap;src:url("/static/fonts/jetbrains-mono-500-latin-24.b636a65da4f0.woff2?f3e5a2072933") format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--bg:#10141c;--bg-elevated:#161b26;--surface:#1e2430;--border:#2a3344;--text:#e8eaef;--text-muted:#b8c0ce;--accent:#7eb6e0;--accent-strong:#3572a8;--accent-soft:rgba(126,182,224,0.15);--danger:#e07070;--font-display:"Fraunces","Times New Roman",serif;--font-body:"IBM Plex Sans",system-ui,sans-serif;--font-mono:"JetBrains Mono",ui-monospace,monospace;--space:1rem;--radius:4px;--max:72rem;--reading:42rem;--aside:16rem;--ease:0.2s ease}*,*::before,*::after{box-sizing:border-box}html{font-size:17px;scroll-behavior:smooth;scrollbar-gutter:stable}@media (min-width:48em){html{font-size:18px}}body{margin:0;min-height:100vh;font-family:var(--font-body);color:var(--text);line-height:1.65;background-color:var(--bg);background-image:radial-gradient(ellipse 120% 80% at 10% -20%,rgba(53,114,168,0.18),transparent 55%),radial-gradient(ellipse 90% 60% at 100% 0%,rgba(126,182,224,0.08),transparent 50%),linear-gradient(180deg,var(--bg) 0%,var(--bg-elevated) 100%);background-attachment:fixed}img{max-width:100%;height:auto}img.full-width{width:100%}img:not(.full-width):not(.site-brand__avatar){display:block;margin-left:auto;margin-right:auto;margin-bottom:1.5rem}a{color:var(--accent);text-decoration-thickness:1px;text-underline-offset:0.2em;transition:color var(--ease),text-decoration-color var(--ease)}a:hover,a:focus-visible{color:#9ecff0}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:550;line-height:1.25;color:var(--text);letter-spacing:-0.02em}h1{font-size:clamp(2rem,4vw,2.75rem)}h2{font-size:clamp(1.45rem,2.5vw,1.85rem)}h3{font-size:1.25rem}h4{font-size:1.1rem}hr{border:0;border-top:1px solid var(--border);margin:2rem 0}table{margin:0 auto 1rem;border-collapse:collapse}td,th{padding:0.4rem 0.6rem;text-align:center;border:1px solid var(--border)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:var(--space);top:-3rem;z-index:100;padding:0.5rem 0.75rem;background:var(--accent-strong);color:#fff;border-radius:var(--radius)}.skip-link:focus{top:var(--space)}.site-wrap{width:min(100% - 2rem,var(--max));margin-inline:auto}.site-header{border-bottom:1px solid var(--border);background:rgba(16,20,28,0.85);backdrop-filter:blur(8px)}.site-nav{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:0.65rem 0}.site-nav__links{display:flex;flex-wrap:wrap;gap:0.25rem 1.25rem;list-style:none;margin:0;padding:0}.site-nav__links a{color:var(--text-muted);text-decoration:none;font-size:0.95rem;font-weight:500;padding:0.25rem 0;border-bottom:2px solid transparent;transition:color var(--ease),border-color var(--ease)}.site-nav__links a:hover,.site-nav__links a:focus-visible,.site-nav__links a.is-active{color:var(--text);border-bottom-color:var(--accent)}.site-nav__toggle{display:none;background:transparent;border:1px solid var(--border);color:var(--text);border-radius:var(--radius);padding:0.4rem 0.65rem;cursor:pointer;font-family:var(--font-body);font-size:0.9rem}.site-brand{padding:1.75rem 0 1.5rem}.site-brand__inner{display:flex;align-items:center;gap:1.25rem}.site-brand__avatar{width:clamp(3.5rem,10vw,5rem);height:auto;aspect-ratio:auto;object-fit:contain;border-radius:0;border:none;flex-shrink:0;margin:0;background:transparent}.site-brand__name{margin:0;font-family:var(--font-display);font-size:clamp(2.2rem,6vw,3.4rem);font-weight:600;letter-spacing:-0.03em;line-height:1}.site-brand__name a{color:var(--text);text-decoration:none}.site-brand__name a:hover{color:var(--accent)}.site-brand__tagline{margin:0.45rem 0 0;color:var(--text-muted);font-size:0.95rem;max-width:36rem}.site-main{padding:2rem 0 3rem}.layout{display:grid;gap:2.5rem}@media (min-width:64em){.layout{grid-template-columns:minmax(0,1fr) var(--aside);gap:3rem}.layout--no-aside,.layout:not(:has(.site-aside:not(:empty))){grid-template-columns:minmax(0,1fr)}}.blog-main{min-width:0}.site-aside:empty{display:none}@media (min-width:64em){.layout--no-aside .site-aside{display:none}}.post{display:flex;flex-direction:column;gap:0.5rem;padding:1.5rem 0;border-bottom:1px solid var(--border)}.post:first-child{padding-top:0}.post h2{margin:0}.post h2 a{color:var(--text);text-decoration:none;background-image:linear-gradient(var(--accent),var(--accent));background-position:0 100%;background-repeat:no-repeat;background-size:0 1px;transition:background-size 0.25s ease,color var(--ease)}.post h2 a:hover,.post h2 a:focus-visible{color:var(--accent);background-size:100% 1px}.post_link_next{margin-left:auto;margin-top:0.35rem;font-size:0.95rem;text-decoration:none;border-bottom:1px solid var(--accent-soft)}.post_link_next:hover{border-bottom-color:var(--accent)}.meta{color:var(--text-muted);font-size:0.9rem;margin:0 0 1.25rem}.aside-block{margin-bottom:1.75rem}.aside-block__title{margin:0 0 0.75rem;font-size:0.8rem;text-transform:uppercase;letter-spacing:0.08em;color:var(--text-muted);font-family:var(--font-body);font-weight:600}.tag-cloud{display:flex;flex-wrap:wrap;gap:0.4rem}.tag{display:inline-block;padding:0.2rem 0.55rem;border:1px solid var(--border);border-radius:999px;color:var(--text-muted);text-decoration:none;font-size:0.85rem;background:var(--surface);transition:border-color var(--ease),color var(--ease),background var(--ease)}.tag:hover,.tag:focus-visible,.tag.is-active{color:var(--text);border-color:var(--accent);background:var(--accent-soft)}.search-form{display:flex;flex-direction:column;gap:0.5rem}.form-control,input[type="text"],input[type="email"],input[type="url"],input[type="search"],textarea{width:100%;padding:0.6rem 0.75rem;font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.form-control:focus,input:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.form-group,.form-field{margin-bottom:1rem}.comment-form-actions{display:flex;flex-wrap:wrap;gap:0.5rem;margin-top:1.25rem}.form-label,label{display:block;margin-bottom:0.35rem;font-size:0.9rem;color:var(--text-muted)}.form-check{display:flex;align-items:center;gap:0.5rem;margin-bottom:1rem}.form-check-input,input[type="checkbox"]{width:auto;accent-color:var(--accent)}.form-check-label{margin:0;color:var(--text)}.form-text,.text-muted{color:var(--text-muted);font-size:0.85rem}.text-danger{color:var(--danger)}.btn,button[type="submit"],input[type="submit"]{display:inline-block;padding:0.55rem 1.1rem;font:inherit;font-weight:500;color:#fff;background:var(--accent-strong);border:1px solid transparent;border-radius:var(--radius);cursor:pointer;text-decoration:none;transition:background var(--ease),transform var(--ease)}.btn:hover,button[type="submit"]:hover,input[type="submit"]:hover{background:var(--accent);color:#fff}.btn-secondary,input[type="submit"][name="preview"]{background:transparent;color:var(--text);border-color:var(--border)}.btn-secondary:hover,input[type="submit"][name="preview"]:hover{border-color:var(--accent);color:var(--accent);background:transparent}.btn-primary{background:var(--accent-strong)}.comment-form fieldset{border:0;margin:0;padding:0;min-inline-size:0}.captcha-widget{--captcha-h:50px;display:flex;flex-wrap:wrap;align-items:stretch;gap:0.65rem}.captcha-widget__image{display:block;flex:0 0 auto;height:var(--captcha-h);line-height:0}.captcha-widget img.captcha{display:block;height:100%;width:auto;max-height:100%;border:1px solid var(--border);border-radius:var(--radius);background:#fff;vertical-align:top}.captcha-widget__fields{display:flex;flex:1 1 9rem;align-items:stretch;min-width:7.5rem;max-width:12rem;height:var(--captcha-h)}.captcha-widget__fields input[type="hidden"]{display:none}.captcha-widget__fields input[type="text"]{width:100%;max-width:none;height:100%!important;margin:0;padding-top:0;padding-bottom:0;line-height:1.2}.captcha-widget .captcha-refresh{display:inline-flex;align-items:center;justify-content:center;gap:0.4rem;flex:0 0 auto;height:var(--captcha-h);min-height:var(--captcha-h);padding:0 0.9rem;font-size:0.9rem;line-height:1;white-space:nowrap}.captcha-refresh__icon{display:inline-block;font-size:1.05rem;line-height:1;transition:transform 0.35s var(--ease,ease)}.captcha-refresh.is-loading .captcha-refresh__icon{animation:captcha-spin 0.7s linear infinite}@keyframes captcha-spin{to{transform:rotate(360deg)}}.panel{margin:2rem 0;padding:1.5rem;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.panel__title{margin:0 0 1rem;text-align:center;font-size:1.15rem}.tags{margin-top:1.5rem}.tags h3{margin-bottom:0.75rem}.pagination{display:flex;flex-wrap:wrap;justify-content:center;gap:0.35rem;list-style:none;margin:2rem 0 0;padding:0}.page-item .page-link,.pagination a{display:inline-flex;align-items:center;justify-content:center;min-width:2.25rem;padding:0.35rem 0.6rem;color:var(--text-muted);text-decoration:none;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface)}.page-item.active .page-link,.page-item .page-link:hover{color:var(--text);border-color:var(--accent);background:var(--accent-soft)}.site-footer{margin-top:auto;padding:2rem 0;border-top:1px solid var(--border);color:var(--text-muted);font-size:0.9rem}.site-footer__inner{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1rem}.site-footer a{color:var(--text-muted);text-decoration:none}.site-footer a:hover{color:var(--accent)}.site-footer__top{color:var(--accent);text-decoration:none;font-size:1.1rem}.code{padding:1em;margin-bottom:1rem;position:relative;border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}.code_add{background:rgba(112,224,115,0.22)!important}.code_del{background:rgba(239,79,90,0.28)!important}.codehilite{background-color:#272822;padding:1em;margin-bottom:1rem;border:1px solid var(--border);border-radius:var(--radius);overflow-x:auto}pre{margin-bottom:0!important;color:#f8f8f2!important;font-family:var(--font-mono);font-size:0.88rem}.linenos{margin-right:1rem;padding-right:0.4rem;border-right:solid #8a939c 0.5px;color:#8a939c}.code_switcher{position:absolute;top:0.4rem;right:0.5rem;cursor:pointer;color:var(--text-muted)}.code_switcher:hover{color:var(--accent)}code{font-family:var(--font-mono);font-size:0.9em;color:#ebebeb!important;background-color:#272822!important;padding:0.1em 0.35em;border-radius:3px}.codehilite code{padding:0}.responsive-object{text-align:center;padding-bottom:0!important}@media (max-width:48em){iframe{width:100%}}@media (max-width:40em){.site-nav__toggle{display:inline-flex}.site-nav__links{display:none;width:100%;flex-direction:column;gap:0.5rem;padding:0.5rem 0 0.75rem}.site-nav__links.is-open{display:flex}.site-nav{flex-wrap:wrap}}.default .hll{background-color:#ffffcc}.default{background:#f8f8f8}.default .c{color:#408080;font-style:italic}.default .err{border:1px solid #FF0000}.default .k{color:#008000;font-weight:bold}.default .o{color:#666666}.default .ch{color:#408080;font-style:italic}.default .cm{color:#408080;font-style:italic}.default .cp{color:#BC7A00}.default .cpf{color:#408080;font-style:italic}.default .c1{color:#408080;font-style:italic}.default .cs{color:#408080;font-style:italic}.default .gd{color:#A00000}.default .ge{font-style:italic}.default .gr{color:#FF0000}.default .gh{color:#000080;font-weight:bold}.default .gi{color:#00A000}.default .go{color:#888888}.default .gp{color:#000080;font-weight:bold}.default .gs{font-weight:bold}.default .gu{color:#800080;font-weight:bold}.default .gt{color:#0044DD}.default .kc{color:#008000;font-weight:bold}.default .kd{color:#008000;font-weight:bold}.default .kn{color:#008000;font-weight:bold}.default .kp{color:#008000}.default .kr{color:#008000;font-weight:bold}.default .kt{color:#B00040}.default .m{color:#666666}.default .s{color:#BA2121}.default .na{color:#7D9029}.default .nb{color:#008000}.default .nc{color:#0000FF;font-weight:bold}.default .no{color:#880000}.default .nd{color:#AA22FF}.default .ni{color:#999999;font-weight:bold}.default .ne{color:#D2413A;font-weight:bold}.default .nf{color:#0000FF}.default .nl{color:#A0A000}.default .nn{color:#0000FF;font-weight:bold}.default .nt{color:#008000;font-weight:bold}.default .nv{color:#19177C}.default .ow{color:#AA22FF;font-weight:bold}.default .w{color:#bbbbbb}.default .mb{color:#666666}.default .mf{color:#666666}.default .mh{color:#666666}.default .mi{color:#666666}.default .mo{color:#666666}.default .sa{color:#BA2121}.default .sb{color:#BA2121}.default .sc{color:#BA2121}.default .dl{color:#BA2121}.default .sd{color:#BA2121;font-style:italic}.default .s2{color:#BA2121}.default .se{color:#BB6622;font-weight:bold}.default .sh{color:#BA2121}.default .si{color:#BB6688;font-weight:bold}.default .sx{color:#008000}.default .sr{color:#BB6688}.default .s1{color:#BA2121}.default .ss{color:#19177C}.default .bp{color:#008000}.default .fm{color:#0000FF}.default .vc{color:#19177C}.default .vg{color:#19177C}.default .vi{color:#19177C}.default .vm{color:#19177C}.default .il{color:#666666}.monokai .hll{background-color:#49483e}.monokai{background:#272822;color:#f8f8f2}.monokai .c{color:#75715e}.monokai .err{color:#960050;background-color:#1e0010}.monokai .k{color:#66d9ef}.monokai .l{color:#ae81ff}.monokai .n{color:#f8f8f2}.monokai .o{color:#f92672}.monokai .p{color:#f8f8f2}.monokai .ch{color:#75715e}.monokai .cm{color:#75715e}.monokai .cp{color:#75715e}.monokai .cpf{color:#75715e}.monokai .c1{color:#75715e}.monokai .cs{color:#75715e}.monokai .gd{color:#f92672}.monokai .ge{font-style:italic}.monokai .gi{color:#a6e22e}.monokai .gs{font-weight:bold}.monokai .gu{color:#75715e}.monokai .kc{color:#66d9ef}.monokai .kd{color:#66d9ef}.monokai .kn{color:#f92672}.monokai .kp{color:#66d9ef}.monokai .kr{color:#66d9ef}.monokai .kt{color:#66d9ef}.monokai .ld{color:#e6db74}.monokai .m{color:#ae81ff}.monokai .s{color:#e6db74}.monokai .na{color:#a6e22e}.monokai .nb{color:#f8f8f2}.monokai .nc{color:#a6e22e}.monokai .no{color:#66d9ef}.monokai .nd{color:#a6e22e}.monokai .ni{color:#f8f8f2}.monokai .ne{color:#a6e22e}.monokai .nf{color:#a6e22e}.monokai .nl{color:#f8f8f2}.monokai .nn{color:#f8f8f2}.monokai .nx{color:#a6e22e}.monokai .py{color:#f8f8f2}.monokai .nt{color:#f92672}.monokai .nv{color:#f8f8f2}.monokai .ow{color:#f92672}.monokai .w{color:#f8f8f2}.monokai .mb{color:#ae81ff}.monokai .mf{color:#ae81ff}.monokai .mh{color:#ae81ff}.monokai .mi{color:#ae81ff}.monokai .mo{color:#ae81ff}.monokai .sa{color:#e6db74}.monokai .sb{color:#e6db74}.monokai .sc{color:#e6db74}.monokai .dl{color:#e6db74}.monokai .sd{color:#e6db74}.monokai .s2{color:#e6db74}.monokai .se{color:#ae81ff}.monokai .sh{color:#e6db74}.monokai .si{color:#e6db74}.monokai .sx{color:#e6db74}.monokai .sr{color:#e6db74}.monokai .s1{color:#e6db74}.monokai .ss{color:#e6db74}.monokai .bp{color:#f8f8f2}.monokai .fm{color:#a6e22e}.monokai .vc{color:#f8f8f2}.monokai .vg{color:#f8f8f2}.monokai .vi{color:#f8f8f2}.monokai .vm{color:#f8f8f2}.monokai .il{color:#ae81ff}blockquote{margin:1.25rem 0 1.25rem 0.5rem;padding:0.25rem 0 0.25rem 1rem;border-left:3px solid var(--accent,#5b9fd4);color:var(--text-muted,#9aa3b2)}.block-blockquote{position:relative;padding-left:1.5rem}.icon-quote,.icon-code{display:inline-block;width:1em;height:1em;background-color:currentColor;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;-webkit-mask-position:center;mask-position:center;-webkit-mask-size:contain;mask-size:contain}.icon-quote{left:0;top:0.1em;position:absolute;color:var(--accent,#5b9fd4);opacity:0.7;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M3.5 9.5c0-2.2 1.2-3.8 3.2-4.6l-.6-1.4C3.5 4.5 1.5 6.8 1.5 9.8c0 1.8 1.2 3.2 2.9 3.2 1.5 0 2.6-1.1 2.6-2.6 0-1.5-1-2.5-2.3-2.5-.4 0-.8.1-1.2.3zm7 0c0-2.2 1.2-3.8 3.2-4.6l-.6-1.4c-2.6 1-4.6 3.3-4.6 6.3 0 1.8 1.2 3.2 2.9 3.2 1.5 0 2.6-1.1 2.6-2.6 0-1.5-1-2.5-2.3-2.5-.4 0-.8.1-1.2.3z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M3.5 9.5c0-2.2 1.2-3.8 3.2-4.6l-.6-1.4C3.5 4.5 1.5 6.8 1.5 9.8c0 1.8 1.2 3.2 2.9 3.2 1.5 0 2.6-1.1 2.6-2.6 0-1.5-1-2.5-2.3-2.5-.4 0-.8.1-1.2.3zm7 0c0-2.2 1.2-3.8 3.2-4.6l-.6-1.4c-2.6 1-4.6 3.3-4.6 6.3 0 1.8 1.2 3.2 2.9 3.2 1.5 0 2.6-1.1 2.6-2.6 0-1.5-1-2.5-2.3-2.5-.4 0-.8.1-1.2.3z'/%3E%3C/svg%3E")}.icon-code.code_switcher{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M5.3 4.2 1.6 8l3.7 3.8.9-.9L3.4 8l2.8-2.9-.9-.9zm5.4 0-.9.9L12.6 8l-2.8 2.9.9.9L14.4 8l-3.7-3.8zM9.1 2.5 6.4 13.1l1.1.3 2.7-10.6-1.1-.3z'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath fill='%23000' d='M5.3 4.2 1.6 8l3.7 3.8.9-.9L3.4 8l2.8-2.9-.9-.9zm5.4 0-.9.9L12.6 8l-2.8 2.9.9.9L14.4 8l-3.7-3.8zM9.1 2.5 6.4 13.1l1.1.3 2.7-10.6-1.1-.3z'/%3E%3C/svg%3E")}.richtext-image{display:block;margin-left:auto;margin-right:auto;margin-bottom:1.5rem}audio,video{display:block;margin-left:auto;margin-right:auto;width:90%;height:auto}iframe{display:block;margin-left:auto;margin-right:auto;width:100%!important}.fa_code_hide{display:none}canvas{height:600px!important;width:80%!important;margin-left:auto!important;margin-right:auto!important;min-width:auto!important;min-height:auto!important;display:block}.comments-section{margin-top:1.5rem}.comment-card{background:var(--surface,#1e2430);border:1px solid var(--border,#2a3344);border-radius:4px;padding:1rem 1.15rem;margin-bottom:1rem}.comment-header{display:flex;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:0.65rem;padding-bottom:0.65rem;border-bottom:1px solid var(--border,#2a3344)}.comment-author{font-weight:600;color:var(--text,#e8eaef)}.comment-author a{color:var(--accent,#5b9fd4);text-decoration:none}.comment-author a:hover{text-decoration:underline}.comment-date{font-size:0.85rem;color:var(--text-muted,#9aa3b2);white-space:nowrap}.comment-date .permalink{color:var(--text-muted,#9aa3b2);text-decoration:none;margin-left:0.35rem}.comment-content{margin:0;line-height:1.65;color:var(--text,#e8eaef)}.comment-reply{margin:0.75rem 0 0}.comment-reply-btn{appearance:none;background:none;border:0;padding:0;font:inherit;font-size:0.9rem;color:var(--accent,#5b9fd4);cursor:pointer;text-decoration:underline;text-underline-offset:0.15em}.comment-reply-btn:hover{color:var(--text,#e8eaef)}.comment-reply-slot{margin:0.85rem 0 0.25rem;padding:0.85rem 0 0.25rem 1rem;border-left:2px solid var(--accent,#5b9fd4)}.comment-reply-slot--active{display:block}.comment-form-panel__header{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:0.5rem 1rem;margin-bottom:0.75rem}.comment-form-panel__header .panel__title{margin:0}.comment-reply-cancel{appearance:none;background:none;border:0;padding:0;font:inherit;font-size:0.85rem;color:var(--text-muted,#9aa3b2);cursor:pointer;text-decoration:underline;text-underline-offset:0.15em}.comment-reply-cancel:hover{color:var(--text,#e8eaef)}.comment-children{margin:1rem 0 0 1.25rem;padding-left:1rem;border-left:2px solid var(--border,#2a3344)}.comment-card--nested{margin-top:0.75rem}.comment-form-panel .form-control{background:var(--bg,#10141c)}#add_comment{scroll-margin-top:5rem}.badge,.badge-secondary{display:inline-block;padding:0.1rem 0.45rem;font-size:0.75rem;border-radius:999px;background:var(--accent-soft,rgba(91,159,212,0.15));color:var(--accent,#5b9fd4);border:1px solid var(--border,#2a3344);font-weight:500}.alert{padding:0.75rem 1rem;border-radius:4px;margin-bottom:1rem}.alert-danger{background:rgba(224,112,112,0.12);border:1px solid rgba(224,112,112,0.35);color:#e07070}.alert-info{background:var(--accent-soft,rgba(91,159,212,0.15));border:1px solid var(--border,#2a3344);color:var(--text,#e8eaef)}.comment-sent-dialog{border:1px solid var(--border,#2a3344);border-radius:6px;padding:0;max-width:min(22rem,calc(100vw - 2rem));background:var(--bg-elevated,#161b26);color:var(--text,#e8eaef);box-shadow:0 18px 48px rgba(0,0,0,0.45)}.comment-sent-dialog::backdrop{background:rgba(8,10,14,0.62)}.comment-sent-dialog__inner{margin:0;padding:1.35rem 1.4rem 1.25rem}.comment-sent-dialog__title{margin:0 0 0.55rem;font-family:var(--font-display,Fraunces,Georgia,serif);font-size:1.25rem;font-weight:600;line-height:1.25;color:var(--text,#e8eaef)}.comment-sent-dialog__text{margin:0 0 1.15rem;color:var(--text-muted,#9aa3b2);line-height:1.55;font-size:0.95rem}.comment-sent-dialog__ok{width:100%}