﻿@import"https://fonts.googleapis.com/css2?family=IBM+Plex+Sans:ital,wght@0,300;0,400;0,500;0,600;0,700;1,400;1,500&family=JetBrains+Mono:ital,wght@0,400;0,500;0,600;0,700;1,400;1,500&display=swap";.blurry{overflow:hidden}a{text-decoration:none}hr{border-bottom:0;border-style:solid;border-color:#ececec}blockquote{color:#6b7886;font-style:italic;text-align:center;opacity:.9;border-top:1px solid #ececec;border-bottom:1px solid #ececec;padding:10px;margin-left:10px;margin-right:10px;font-size:1em}blockquote>:last-child{margin-bottom:0;margin-top:0}ul{list-style:none}ul li{display:list-item;text-align:-webkit-match-parent}ul li::before{content:"﹣";display:inline-block;top:-1px;width:1.2em;position:relative;margin-left:-1.3em;font-weight:700}ol{list-style:none;counter-reset:li}ol li{position:relative;counter-increment:li}ol li::before{content:counter(li);display:inline-block;width:1em;margin-right:.5em;margin-left:-1.6em;text-align:right;direction:rtl;font-weight:700;font-size:14.4px}.container{flex:1 0 auto}.footer{flex-shrink:0}body{font-family:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,sans-serif;font-size:18px;line-height:1.6;font-weight:400;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-font-feature-settings:"kern" 1;-moz-font-feature-settings:"kern" 1;-o-font-feature-settings:"kern" 1;font-feature-settings:"kern" 1;font-kerning:normal;box-sizing:border-box;display:flex;flex-direction:column;min-height:100vh;padding-top:56px}body img{width:100%;height:auto}body{color:#c7bebe;background-color:#131418}body h1,body h2,body h3,body h4,body h5,body h6{color:#d2c7c7;font-weight:600;line-height:1.3;margin-top:24px;margin-bottom:16px}body h1{font-size:35.154px;font-weight:700}body h2{font-size:28.134px}body h3{font-size:22.5px}body code{font-family:"JetBrains Mono","Fira Code","Cascadia Code","Courier New",monospace;font-size:16.2px;color:#2881d3}body code.highlighter-rouge{background-color:#1b1d25;padding:2px 6px;border-radius:3px}body pre{font-family:"JetBrains Mono","Fira Code","Cascadia Code","Courier New",monospace;font-size:16.2px;line-height:1.5}body pre code{font-family:inherit}body blockquote{color:#a1a0a0;border-color:#1b1d25}body strong,body b{color:#eaeaea}body li:before{color:#eaeaea}body a{color:#8ba8ff;text-decoration:none;transition:color .3s ease,opacity .2s ease,text-shadow .3s ease}body a:hover{color:#a4c0ff;text-shadow:0 0 8px rgba(164,192,255,.3)}body a:active,body a:focus{color:#6b8fef;outline:2px solid #a4c0ff;outline-offset:2px}body a:focus{outline-style:dashed}.posts-item-note{font-size:18px;font-weight:700;margin-bottom:5px;color:#0d122b}.post-item{display:flex;padding-top:5px;padding-bottom:6px}.post-item:not(:first-child){border-top:1px solid #ececec}.post-item .post-item-date{min-width:96px;color:#0d122b;font-weight:700;padding-right:10px}@media screen and (max-width: 768px){.post-item .post-item-date{font-size:16px}}.post-item .post-item-title{margin:0;border:0;padding:0;font-size:18px;font-weight:normal;letter-spacing:.1px}.post-item .post-item-title a{color:#434648}.post-item .post-item-title a:hover,.post-item .post-item-title afocus{color:#0d122b}.post-item .post-item-note-type{margin:0;border:500px;padding:0;font-size:18px;font-weight:normal;letter-spacing:.1px}.post-item .post-item-note-type a{color:#434648}.post-item .post-item-note-type a:hover,.post-item .post-item-note-type afocus{color:#0d122b}.footer{margin-top:8em;margin-bottom:2em;text-align:center}.footer span.footer_item{color:#0d122b;opacity:.8;font-weight:700;font-size:14.4px;text-decoration:none}.footer a.footer_item{color:#0d122b;opacity:.8;text-decoration:none}.archive-tags{height:auto}.archive-tags .tag-item{padding:1px 3px;border-radius:2px;border:1px solid rgba(128,128,128,.1);background-color:rgba(128,128,128,.1)}.footer{bottom:0;width:100%;border-color:#1b1d25}.footer a.footer_item{color:#eaeaea;text-decoration:none;transition:color .2s ease}.footer a.footer_item:hover{color:#3e4a70;text-decoration:none}.copyright-text{color:#d2c7c7}.wrapper.page{margin-inline:15px}.wrapper.page .header .header-title{text-align:center;margin-top:7rem;margin-bottom:7rem}@media(max-width: 768px){.wrapper.page .header .header-title{margin-top:3rem;margin-bottom:3rem}}.wrapper.post{margin-inline:15px}@media screen and (max-width: 768px){.wrapper.post{padding-left:15px;padding-right:15px}}.wrapper.post .header{margin-top:1em;margin-bottom:0em}.wrapper.post .header .tags{margin-left:3px;letter-spacing:.5px}.wrapper.post .header .tags .tag{font-weight:700;font-size:12.4px;color:#84a5ff}.wrapper.post .header .tags .tag:hover{text-decoration:none}.wrapper.post .header .header-title{font-size:2.2em;line-height:1.2;margin-top:10px;margin-bottom:20px}@media screen and (max-width: 768px){.wrapper.post .header .header-title{font-size:1.9em}}.wrapper.post .header-subtitle [itemprop=name],.wrapper.post .header-subtitle [itemprop=publishDate]{color:#8ba8ff;opacity:.7}.wrapper.post .header-subtitle{margin-top:1px;margin-bottom:25px;text-align:left}.john-landing{margin-top:7rem;margin-bottom:7rem;text-align:center;margin-inside:15px}@media screen and (max-width: 768px){.john-landing{margin-top:3.5em;margin-bottom:3.5em}}.john-landing .author-avatar{width:100px;height:100px;border-radius:100%;user-select:none;background-color:#0d122b;-ms-user-select:none;-webkit-user-select:none;-webkit-animation:.5s ease-in forwards fadein;animation:.5s ease-in forwards fadein;opacity:1}.john-landing .author-name{font-size:1.7em;margin-bottom:2px}.john-landing .author-bio{margin:0 auto;opacity:.9;max-width:393px;line-height:1.688}code{font-family:"Fira Code",monospace;text-rendering:optimizeLegibility;font-feature-settings:"calt" 1;font-variant-ligatures:normal;word-spacing:normal;word-break:normal;word-wrap:normal;font-size:1em;color:#333;padding-bottom:0}code.highlighter-rouge{padding:1px 3px;top:-1px;background-color:#f6f6f6;border-radius:2px;border:1px solid rgba(128,128,128,.1)}pre.highlight,pre{margin:24px 0}@media screen and (max-width: 768px){pre.highlight,pre{margin:16px calc(51% - 51vw);padding-left:16px}}pre.highlight,pre{border:1px solid rgba(138,168,255,.1);background-color:#1a1b21;border-radius:8px;padding:24px;display:block;overflow-x:auto;box-shadow:0 2px 8px rgba(0,0,0,.2),inset 0 1px 0 hsla(0,0%,100%,.03);scroll-behavior:smooth}pre.highlight::-webkit-scrollbar,pre::-webkit-scrollbar{height:8px;background-color:rgba(0,0,0,.2);border-radius:4px}pre.highlight::-webkit-scrollbar-thumb,pre::-webkit-scrollbar-thumb{background-color:rgba(138,168,255,.3);border-radius:4px}pre.highlight::-webkit-scrollbar-thumb:hover,pre::-webkit-scrollbar-thumb:hover{background-color:rgba(138,168,255,.5)}pre.highlight>code,pre>code{font-family:"JetBrains Mono","Fira Code","Cascadia Code","Courier New",monospace;width:100%;max-width:50rem;margin-left:auto;margin-right:auto;line-height:1.6;font-size:16.2px;display:block;border:0;font-feature-settings:"liga" 1,"calt" 1;-webkit-font-feature-settings:"liga" 1,"calt" 1}.highlight table td{padding:8px}.highlight table pre{margin:0;box-shadow:none}#contactMeForm{max-width:800px;margin:48px auto}#contactMeForm .form-buttons{display:flex;flex-direction:column;gap:16px;margin-top:16px}#contactMeForm .form-buttons .btn{width:100%}#contactMeForm .btn:not(.form-buttons .btn){width:100%;margin-top:16px}#contactMeForm .form-control:last-of-type{margin-bottom:16px}#contactMeForm textarea.form-control,#contactMeForm textarea{background-color:rgba(27,29,37,.8) !important;color:#eaeaea !important;border:1px solid rgba(138,168,255,.2) !important}#contactMeForm textarea.form-control::placeholder,#contactMeForm textarea::placeholder{color:#a1a0a0 !important;opacity:.6 !important}#contactMeForm textarea.form-control:focus,#contactMeForm textarea:focus{background-color:rgba(27,29,37,.95) !important;border-color:#8ba8ff !important;color:#eaeaea !important}#contactMeForm textarea.form-control:hover:not(:focus),#contactMeForm textarea:hover:not(:focus){background-color:rgba(27,29,37,.9) !important}#contactMeForm input.form-control{color:#eaeaea !important}#contactMeForm input.form-control::placeholder{color:#a1a0a0 !important;opacity:.6 !important}#contactMeForm .alert{margin-top:24px;padding:16px;border-radius:8px;font-weight:500}#contactMeForm .alert.alert-success{background-color:rgba(111,191,115,.2);border:1px solid rgba(111,191,115,.4);color:hsl(123,38.4615384615%,79.2156862745%)}#contactMeForm .alert.alert-danger{background-color:rgba(251,73,52,.2);border:1px solid rgba(251,73,52,.4);color:hsl(6.3316582915,96.1352657005%,79.4117647059%)}form{margin:0 auto;width:100%;padding:32px;border:1px solid rgba(138,168,255,.15);border-radius:12px;background:rgba(27,29,37,.5);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:0 4px 16px rgba(0,0,0,.3)}.form-control{margin-bottom:24px}label{display:block;margin-bottom:8px;color:#eaeaea;font-weight:500;font-size:16.2px}input[type=text],input[type=email],input[type=url],input[type=tel],input[type=number],input[type=search],textarea,select{font-family:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,sans-serif;font-size:18px;width:100%;padding:16px;box-sizing:border-box;background-color:rgba(27,29,37,.8);border:1px solid rgba(138,168,255,.2);border-radius:8px;color:#eaeaea;transition:border-color .3s ease,background-color .3s ease,box-shadow .3s ease}input[type=text]::placeholder,input[type=email]::placeholder,input[type=url]::placeholder,input[type=tel]::placeholder,input[type=number]::placeholder,input[type=search]::placeholder,textarea::placeholder,select::placeholder{color:#a1a0a0;opacity:.6}input[type=text]:focus,input[type=email]:focus,input[type=url]:focus,input[type=tel]:focus,input[type=number]:focus,input[type=search]:focus,textarea:focus,select:focus{outline:none;border-color:#8ba8ff;background-color:rgba(27,29,37,.95);box-shadow:0 0 0 3px rgba(138,168,255,.1),0 2px 8px rgba(0,0,0,.2)}input[type=text]:hover:not(:focus),input[type=email]:hover:not(:focus),input[type=url]:hover:not(:focus),input[type=tel]:hover:not(:focus),input[type=number]:hover:not(:focus),input[type=search]:hover:not(:focus),textarea:hover:not(:focus),select:hover:not(:focus){border-color:rgba(138,168,255,.3);background-color:rgba(27,29,37,.9)}textarea{vertical-align:top;min-height:120px;resize:vertical;line-height:1.6;background-color:rgba(27,29,37,.8)}textarea::placeholder{padding-top:0;line-height:1.6}.btn,button[type=submit],input[type=submit]{font-family:"IBM Plex Sans",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen,Ubuntu,sans-serif;font-size:18px;font-weight:600;padding:16px 32px;background:linear-gradient(135deg, #8ba8ff 0%, #5b9cff 100%);border:1px solid rgba(138,168,255,.3);border-radius:8px;color:#eaeaea;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px rgba(138,168,255,.2)}.btn:hover,button[type=submit]:hover,input[type=submit]:hover{background:linear-gradient(135deg, #a4c0ff 0%, rgb(116.5, 171.3932926829, 255) 100%);box-shadow:0 4px 16px rgba(138,168,255,.4);transform:translateY(-2px)}.btn:active,button[type=submit]:active,input[type=submit]:active{transform:translateY(0);box-shadow:0 2px 8px rgba(138,168,255,.3)}.btn:focus,button[type=submit]:focus,input[type=submit]:focus{outline:2px solid #a4c0ff;outline-offset:2px}.btn:disabled,button[type=submit]:disabled,input[type=submit]:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn.btn-secondary,button[type=submit].btn-secondary,input[type=submit].btn-secondary{background:linear-gradient(135deg, rgba(251, 73, 52, 0.3) 0%, rgba(251, 73, 52, 0.2) 100%);border:1px solid rgba(251,73,52,.4);color:hsl(6.3316582915,96.1352657005%,84.4117647059%);font-weight:500}.btn.btn-secondary:hover,button[type=submit].btn-secondary:hover,input[type=submit].btn-secondary:hover{background:linear-gradient(135deg, rgba(251, 73, 52, 0.4) 0%, rgba(251, 73, 52, 0.3) 100%);box-shadow:0 4px 16px rgba(251,73,52,.3);color:hsl(6.3316582915,96.1352657005%,89.4117647059%)}.btn.btn-secondary:active,button[type=submit].btn-secondary:active,input[type=submit].btn-secondary:active{transform:translateY(0);box-shadow:0 2px 8px rgba(251,73,52,.2)}.btn.btn-secondary:focus,button[type=submit].btn-secondary:focus,input[type=submit].btn-secondary:focus{outline:2px solid rgba(251,73,52,.5);outline-offset:2px}.newsletter-footer-signup{margin:48px 0 32px 0;padding:32px 0;border-top:1px solid rgba(138,168,255,.15)}.newsletter-footer-signup .newsletter-container{max-width:800px;margin:0 auto;padding:0 24px}.newsletter-footer-signup .newsletter-content{text-align:center}.newsletter-footer-signup .newsletter-text{margin-bottom:24px}.newsletter-footer-signup .newsletter-title{font-size:22.5px;font-weight:600;color:#eaeaea;margin-bottom:8px}.newsletter-footer-signup .newsletter-description{font-size:18px;color:#a1a0a0;margin-bottom:0}.newsletter-footer-signup .newsletter-form{margin:0;padding:0;background:rgba(0,0,0,0);border:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none}.newsletter-footer-signup .newsletter-input-group{display:flex;flex-direction:column;gap:16px;max-width:500px;margin:0 auto}@media(min-width: 576px){.newsletter-footer-signup .newsletter-input-group{flex-direction:row;align-items:stretch}}.newsletter-footer-signup .newsletter-email-input{flex:1;margin-bottom:0;color:#eaeaea !important}.newsletter-footer-signup .newsletter-email-input::placeholder{color:#a1a0a0 !important;opacity:.6 !important}@media(min-width: 576px){.newsletter-footer-signup .newsletter-email-input{min-width:300px}}.newsletter-footer-signup .newsletter-submit-btn{white-space:nowrap;padding:16px 32px}@media(min-width: 576px){.newsletter-footer-signup .newsletter-submit-btn{flex-shrink:0}}.newsletter-footer-signup .alert{margin-top:16px;margin-bottom:0;padding:16px;border-radius:8px;font-weight:500;text-align:center;max-width:500px;margin-left:auto;margin-right:auto}.newsletter-footer-signup .alert.alert-success{background-color:rgba(111,191,115,.2);border:1px solid rgba(111,191,115,.4);color:hsl(123,38.4615384615%,79.2156862745%)}.newsletter-footer-signup .alert.alert-danger{background-color:rgba(251,73,52,.2);border:1px solid rgba(251,73,52,.4);color:hsl(6.3316582915,96.1352657005%,79.4117647059%)}.newsletter-page-container{max-width:800px;margin:0 auto;padding:32px}.newsletter-section{margin-bottom:48px}.newsletter-section:last-child{margin-bottom:0}.newsletter-section .newsletter-section-title{font-size:28.134px;font-weight:700;color:#eaeaea;margin-bottom:16px;padding-bottom:16px;border-bottom:2px solid rgba(138,168,255,.2)}.newsletter-section .newsletter-section-description{font-size:18px;color:#a1a0a0;margin-bottom:24px;line-height:1.6}#newsletterSubscribeForm,#newsletterUnsubscribeForm,#newsletterStatusForm{max-width:600px;margin:0 auto}#newsletterSubscribeForm .form-control,#newsletterUnsubscribeForm .form-control,#newsletterStatusForm .form-control{margin-bottom:24px}#newsletterSubscribeForm .form-buttons,#newsletterUnsubscribeForm .form-buttons,#newsletterStatusForm .form-buttons{display:flex;flex-direction:column;gap:16px;margin-top:16px}#newsletterSubscribeForm .form-buttons .btn,#newsletterUnsubscribeForm .form-buttons .btn,#newsletterStatusForm .form-buttons .btn{width:100%}#newsletterSubscribeForm .btn:not(.form-buttons .btn),#newsletterUnsubscribeForm .btn:not(.form-buttons .btn),#newsletterStatusForm .btn:not(.form-buttons .btn){width:100%;margin-top:16px}#newsletterSubscribeForm .alert,#newsletterUnsubscribeForm .alert,#newsletterStatusForm .alert{margin-top:24px;padding:16px;border-radius:8px;font-weight:500}#newsletterSubscribeForm .alert.alert-success,#newsletterUnsubscribeForm .alert.alert-success,#newsletterStatusForm .alert.alert-success{background-color:rgba(111,191,115,.2);border:1px solid rgba(111,191,115,.4);color:hsl(123,38.4615384615%,79.2156862745%)}#newsletterSubscribeForm .alert.alert-danger,#newsletterUnsubscribeForm .alert.alert-danger,#newsletterStatusForm .alert.alert-danger{background-color:rgba(251,73,52,.2);border:1px solid rgba(251,73,52,.4);color:hsl(6.3316582915,96.1352657005%,79.4117647059%)}#newsletterSubscribeForm .alert.alert-info,#newsletterUnsubscribeForm .alert.alert-info,#newsletterStatusForm .alert.alert-info{background-color:rgba(138,168,255,.2);border:1px solid rgba(138,168,255,.4);color:rgb(241,244.5,255)}.newsletter-status-result{margin-top:24px;padding:24px;background:rgba(27,29,37,.5);border:1px solid rgba(138,168,255,.2);border-radius:12px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}.newsletter-status-result .status-row{display:flex;justify-content:space-between;align-items:center;padding:8px 0;border-bottom:1px solid rgba(138,168,255,.1)}.newsletter-status-result .status-row:last-child{border-bottom:none}.newsletter-status-result .status-row .status-label{font-weight:600;color:#a1a0a0}.newsletter-status-result .status-row .status-value{color:#eaeaea}.newsletter-status-result .status-row .status-value.status-active{color:hsl(123,38.4615384615%,79.2156862745%);font-weight:600}.newsletter-status-result .status-row .status-value.status-inactive{color:hsl(6.3316582915,96.1352657005%,79.4117647059%);font-weight:600}.newsletter-status-result .status-row .status-value.status-not-found{color:#a1a0a0;font-style:italic}@media(max-width: 575px){.newsletter-footer-signup .newsletter-title{font-size:16.2px}.newsletter-footer-signup .newsletter-description{font-size:14.4px}.newsletter-footer-signup .newsletter-input-group{gap:8px}.newsletter-page-container{padding:16px}.newsletter-section .newsletter-section-title{font-size:22.5px}}pre.highlight,pre{margin:0px}@media screen and (max-width: 768px){pre.highlight,pre{margin:0 calc(51% - 51vw);padding-left:20px}}pre.highlight,pre{border:1px solid rgba(128,128,128,.1);background-color:#1a1b21;border-radius:2px;padding:10px;display:block;overflow-x:auto}pre.highlight>code,pre>code{width:100%;max-width:50rem;margin-left:auto;margin-right:auto;line-height:1.5;font-size:smaller;display:block;border:0}.highlight table td{padding:5px}.highlight table pre{margin:0}.highlight,.highlight .w{color:#fbf1c7}.highlight .err{color:#fb4934;font-weight:bold}.highlight .c,.highlight .cd,.highlight .cm,.highlight .c1,.highlight .cs{color:#928374;font-style:italic}.highlight .cp{color:#8ec07c}.highlight .nt{color:#fb4934}.highlight .o,.highlight .ow{color:#fbf1c7}.highlight .p,.highlight .pi{color:#fbf1c7}.highlight .gi{color:#b8bb26;background-color:#282828}.highlight .gd{color:#fb4934;background-color:#282828}.highlight .gh{color:#b8bb26;font-weight:bold}.highlight .k,.highlight .kn,.highlight .kp,.highlight .kr,.highlight .kv{color:#fb4934}.highlight .kc{color:#d3869b}.highlight .kt{color:#fabd2f}.highlight .kd{color:#fe8019}.highlight .s,.highlight .sb,.highlight .sc,.highlight .sd,.highlight .s2,.highlight .sh,.highlight .sx,.highlight .s1{color:#b8bb26;font-style:italic}.highlight .si{color:#b8bb26;font-style:italic}.highlight .sr{color:#b8bb26;font-style:italic}.highlight .se{color:#fe8019}.highlight .nn{color:#8ec07c}.highlight .nc{color:#8ec07c}.highlight .no{color:#d3869b}.highlight .na{color:#b8bb26}.highlight .m,.highlight .mf,.highlight .mh,.highlight .mi,.highlight .il,.highlight .mo,.highlight .mb,.highlight .mx{color:#d3869b}.highlight .ss{color:#83a598}.navbar{border-color:#1b1d25;margin-right:auto;margin-left:auto;border-bottom:1px solid #4a4d56;padding:16px 24px;transition:background-color .3s ease,box-shadow .3s ease,border-bottom .3s ease,padding .3s ease,backdrop-filter .3s ease}.navbar.navbar-scrolled{background-color:rgba(19,20,24,.95) !important;box-shadow:0 4px 16px rgba(0,0,0,.5);border-bottom:1px solid rgba(138,168,255,.15);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);padding:8px 24px}.navbar .nav-link:not(:last-child){color:#eaeaea;font-weight:500;opacity:.8;padding:8px 16px;border-radius:6px;transition:opacity .3s ease,color .3s ease,background-color .3s ease,transform .2s ease}.navbar .nav-link:hover{color:#a4c0ff;opacity:1;background-color:rgba(138,168,255,.08);transform:translateY(-1px)}.navbar .nav-link:active,.navbar .nav-link:focus{color:#6b8fef;background-color:rgba(138,168,255,.12)}.navbar li:before{content:none}.navbar .dropdown-menu{background-color:rgba(27,29,37,.98);color:#eaeaea;border:1px solid rgba(138,168,255,.15);border-radius:8px;box-shadow:0 8px 24px rgba(0,0,0,.4);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);padding:8px;margin-top:8px}.navbar .dropdown-menu .dropdown-item{color:#eaeaea;padding:8px 16px;border-radius:4px;transition:background-color .2s ease,color .2s ease,transform .2s ease}.navbar .dropdown-menu .dropdown-item:hover{background-color:rgba(138,168,255,.12);color:#a4c0ff;transform:translateX(4px)}.navbar .dropdown-menu .dropdown-item:active,.navbar .dropdown-menu .dropdown-item:focus{background-color:rgba(138,168,255,.18);color:#6b8fef}.navbar .navbar-toggler{margin-left:auto}@media(768px){.navbar .navbar-nav .nav-link{text-align:center}}@media(max-width: 1000px){.navbar .navbar-nav .nav-link{text-align:center}}@media(max-width: 991px){.navbar .navbar-collapse{background-color:rgba(19,20,24,.95);backdrop-filter:blur(12px) saturate(180%);-webkit-backdrop-filter:blur(12px) saturate(180%);margin:0 -24px;padding:16px 24px;border-radius:0 0 8px 8px}}.navbar .menu a#mode{display:none}.navbar .menu .menu-link{color:#eaeaea}@media screen and (max-width: 768px){.navbar .menu{background-color:#131418;border-color:#1b1d25}.navbar .menu .menu-icon>svg{fill:#eaeaea}.navbar .menu input[type=checkbox]:checked~.trigger{background:#131418}}.post-navigation .post-nav-item{color:#000;font-weight:bold}.post-navigation .post-nav-item .post-title{color:#666}.post-navigation .post-nav-prev{color:#84a5ff;font-family:Arial !important;opacity:.9;text-align:left}.post-navigation .post-nav-prev:hover{color:#3e4a70}.post-navigation .post-nav-next{color:#84a5ff;font-family:Arial !important;opacity:.9;text-align:right}.post-navigation .post-nav-next .post-title{text-align:right}.post-navigation .post-nav-next:hover{color:#3e4a70}.posts-wrapper{background-color:rgba(0,0,0,0);padding:8px}.posts-wrapper .posts-item-note{color:#84a5ff;font-size:28.134px;font-weight:600;margin-bottom:24px}.posts-wrapper .post-item{border-top:rgba(0,0,0,0);white-space:normal;overflow-wrap:break-word;padding:16px 8px;border-radius:6px;transition:background-color .2s ease,transform .2s ease,box-shadow .2s ease}.posts-wrapper .post-item:hover{background-color:rgba(138,168,255,.04);transform:translateX(4px);box-shadow:0 2px 8px rgba(0,0,0,.1)}.posts-wrapper .post-item:not(:last-child){border-bottom:1px solid rgba(74,77,86,.5);margin-bottom:4px}.posts-wrapper span.post-item-date{display:block;color:#eaeaea;font-weight:500;font-size:16.2px;white-space:nowrap;opacity:.8;font-family:"JetBrains Mono","Fira Code","Cascadia Code","Courier New",monospace;letter-spacing:.5px}.posts-wrapper .post-item-title a{color:#d2c7c7;font-weight:500;font-size:18px;line-height:1.3;transition:color .3s ease,text-shadow .3s ease;text-decoration:none}.posts-wrapper .post-item-title a:hover{color:#a4c0ff;text-shadow:0 0 8px rgba(164,192,255,.2)}.posts-wrapper .post-item-title a:active,.posts-wrapper .post-item-title a:focus{color:#6b8fef}.col-md-2{flex:1;white-space:nowrap;text-overflow:ellipsis;min-width:120px}.col-md-8{flex:5;padding-left:16px}@media(max-width: 991px){.posts-wrapper{padding:8px 0}.post-item.row{flex-direction:column;align-items:flex-start;padding:8px 8px}.col-md-2{flex:none;width:100%;min-width:0;margin-bottom:2px;padding-left:0}.col-md-8{flex:none;width:100%;padding-left:0}span.post-item-date{font-size:13px !important;opacity:.6 !important;font-weight:400 !important;letter-spacing:.3px}.post-item-title a{font-size:20px !important;line-height:1.3;font-weight:500}}table{width:95%;margin-top:15px;margin-bottom:15px;border-collapse:collapse;font-size:14.4px}table thead{font-weight:700;color:#eaeaea;border-bottom:1px solid #ececec}table th,table td,table tr{border:1px solid #4a4d56;padding:2px 7px}.carousel-item img{object-fit:cover;width:400px;height:100%}.carousel-control-prev,.carousel-control-next{width:auto;height:auto;position:absolute;top:auto;bottom:10px;transform:none}/*!
* Gist DarkCode ver 0.2.1
* Update 03/12/2021 www.adiman.web.id
*/.gist{font-size:18px}.gist-meta,.gist-file,.octotree_toggle,ul.comparison-list>li.title,button.button,a.button,span.button,button.minibutton,a.minibutton,span.minibutton,.clone-url-button>.clone-url-link{background:linear-gradient(#202020, #181818) !important;border-color:#383838 !important;border-radius:0 0 3px 3px !important;text-shadow:none !important;color:#b5b5b5 !important}.markdown-format pre,.markdown-body pre,.markdown-format .highlight pre,.markdown-body .highlight pre,body.blog pre,#facebox pre,.blob-expanded,.terminal,.copyable-terminal,#notebook .input_area,.blob-code-context,.markdown-format code,body.blog pre>code,.api pre,.api code,.CodeMirror,.highlight{background-color:#1d1f21 !important;color:#c5c8c6 !important}.gist .blob-code{padding:1px 10px !important;text-align:left;background:#000;border:0}::selection{background:#24890d;color:#fff;text-shadow:none}::-moz-selection{background:#24890d;color:#fff;text-shadow:none}.blob-num{padding:10px 8px 9px;text-align:right;color:#6b6b6b !important;border:0}.blob-code,.blob-code-inner{color:#c5c8c6 !important}.pl-c,.pl-c span{color:#969896 !important;font-style:italic !important}.pl-c1{color:#de935f !important}.pl-cce{color:#de935f !important}.pl-cn{color:#de935f !important}.pl-coc{color:#de935f !important}.pl-cos{color:#b5bd68 !important}.pl-e{color:#f0c674 !important}.pl-ef{color:#f0c674 !important}.pl-en{color:#f0c674 !important}.pl-enc{color:#de935f !important}.pl-enf{color:#f0c674 !important}.pl-enm{color:#f0c674 !important}.pl-ens{color:#de935f !important}.pl-ent{color:#b294bb !important}.pl-entc{color:#f0c674 !important}.pl-enti{color:#f0c674 !important;font-weight:700 !important}.pl-entm{color:#c66 !important}.pl-eoa{color:#b294bb !important}.pl-eoac{color:#c66 !important}.pl-eoac .pl-pde{color:#c66 !important}.pl-eoai{color:#b294bb !important}.pl-eoai .pl-pde{color:#b294bb !important}.pl-eoi{color:#f0c674 !important}.pl-k{color:#b294bb !important}.pl-ko{color:#b294bb !important}.pl-kolp{color:#b294bb !important}.pl-kos{color:#de935f !important}.pl-kou{color:#de935f !important}.pl-mai .pl-sf{color:#c66 !important}.pl-mb{color:#b5bd68 !important;font-weight:700 !important}.pl-mc{color:#b294bb !important}.pl-mh .pl-pdh{color:#de935f !important}.pl-mi{color:#b294bb !important;font-style:italic !important}.pl-ml{color:#b5bd68 !important}.pl-mm{color:#c66 !important}.pl-mp{color:#81a2be !important}.pl-mp1 .pl-sf{color:#81a2be !important}.pl-mq{color:#de935f !important}.pl-mr{color:#b294bb !important}.pl-ms{color:#b294bb !important}.pl-pdb{color:#b5bd68 !important;font-weight:700 !important}.pl-pdc{color:#969896 !important;font-style:italic !important}.pl-pdc1{color:#de935f !important}.pl-pde{color:#de935f !important}.pl-pdi{color:#b294bb !important;font-style:italic !important}.pl-pds{color:#b5bd68 !important}.pl-pdv{color:#c66 !important}.pl-pse{color:#de935f !important}.pl-pse .pl-s2{color:#de935f !important}.pl-s{color:#b294bb !important}.pl-s1{color:#b5bd68 !important}.pl-s2{color:#c5c8c6 !important}.pl-mp .pl-s3{color:#b294bb !important}.pl-s3{color:#81a2be !important}.pl-sc{color:#c5c8c6 !important}.pl-scp{color:#de935f !important}.pl-sf{color:#dad085 !important}.pl-smc{color:#f0c674 !important}.pl-smi{color:#c5c8c6 !important}.pl-smp{color:#c5c8c6 !important}.pl-sok{color:#b294bb !important}.pl-sol{color:#b5bd68 !important}.pl-som{color:#c66 !important}.pl-sr{color:#c66 !important}.pl-sra{color:#b294bb !important}.pl-src{color:#b294bb !important}.pl-sre{color:#b294bb !important}.pl-st{color:#b294bb !important}.pl-stj{color:#c5c8c6 !important}.pl-stp{color:#de935f !important}.pl-sv{color:#de935f !important}.pl-v{color:#de935f !important}.pl-vi{color:#de935f !important}.pl-vo{color:#c66 !important}.pl-vpf{color:#de935f !important}.pl-mi1{color:#8f9d6a !important;background:rgba(0,64,0,.5) !important}.pl-mdht{color:#8f9d6a !important;background:rgba(0,64,0,.5) !important}.pl-md{color:#c66 !important;background:rgba(64,0,0,.5) !important}.pl-mdhf{color:#c66 !important;background:rgba(64,0,0,.5) !important}.pl-mdr{color:#de935f !important;font-weight:400 !important}.pl-mdh{color:#c66 !important;font-weight:400 !important}.pl-mdi{color:#c66 !important;font-weight:400 !important}.pl-ib{background-color:#c66 !important}.pl-id{background-color:#c66 !important;color:#fff !important}.pl-ii{background-color:#c66 !important;color:#fff !important}.pl-iu{background-color:#c66 !important}.pl-mo{color:#c5c8c6 !important}.pl-mri{color:#de935f !important}.pl-ms1{background-color:#c5c8c6 !important}.pl-va{color:#de935f !important}.pl-vpu{color:#de935f !important}.pl-entl{color:#c5c8c6 !important}.CodeMirror-gutters{background:#222 !important;border-right:1px solid #484848 !important}.CodeMirror-guttermarker{color:#fff !important}.CodeMirror-guttermarker-subtle{color:#aaa !important}.CodeMirror-linenumber{color:#aaa !important}.CodeMirror-cursor{border-left:1px solid #fff !important}.CodeMirror-activeline-background{background:#27282e !important}.CodeMirror-matchingbracket{outline:1px solid gray !important;color:#fff !important}.cm-keyword{color:#f9ee98 !important}.cm-atom{color:#fc0 !important}.cm-number{color:#ca7841 !important}.cm-def{color:#8da6ce !important}.cm-variable-2,span.cm-tag{color:#607392 !important}.cm-variable-3,span.cm-def{color:#607392 !important}.cm-operator{color:#cda869 !important}.cm-comment{color:#777 !important;font-style:italic !important;font-weight:400 !important}.cm-string{color:#8f9d6a !important}.cm-string-2{color:#bd6b18 !important}.cm-meta{background-color:#141414 !important;color:#f7f7f7 !important}.cm-builtin{color:#cda869 !important}.cm-tag{color:#997643 !important}.cm-attribute{color:#d6bb6d !important}.cm-header{color:#ff6400 !important}.cm-hr{color:#aeaeae !important}.cm-link{color:#ad9361 !important;font-style:italic !important;text-decoration:none !important}.cm-error{border-bottom:1px solid red !important}#notebook .highlight table{background:#1d1f21 !important;color:#c5c8c6 !important}.highlight .hll{background-color:#373b41 !important}.highlight .c{color:#969896 !important}.highlight .err{color:#c66 !important}.highlight .k{color:#b294bb !important}.highlight .l{color:#de935f !important}.highlight .h,.highlight .n{color:#c5c8c6 !important}.highlight .o{color:#8abeb7 !important}.highlight .p{color:#c5c8c6 !important}.highlight .cm{color:#969896 !important}.highlight .cp{color:#969896 !important}.highlight .c1{color:#969896 !important}.highlight .cs{color:#969896 !important}.highlight .gd{color:#c66 !important}.highlight .ge{font-style:italic !important}.highlight .gh{color:#c5c8c6 !important;font-weight:700 !important}.highlight .gi{color:#b5bd68 !important}.highlight .gp{color:#969896 !important;font-weight:700 !important}.highlight .gs{font-weight:700 !important}.highlight .gu{color:#8abeb7 !important;font-weight:700 !important}.highlight .kc{color:#b294bb !important}.highlight .kd{color:#b294bb !important}.highlight .kn{color:#8abeb7 !important}.highlight .kp{color:#b294bb !important}.highlight .kr{color:#b294bb !important}.highlight .kt{color:#f0c674 !important}.highlight .ld{color:#b5bd68 !important}.highlight .m{color:#de935f !important}.highlight .s{color:#b5bd68 !important}.highlight .na{color:#81a2be !important}.highlight .nb{color:#c5c8c6 !important}.highlight .nc{color:#f0c674 !important}.highlight .no{color:#c66 !important}.highlight .nd{color:#8abeb7 !important}.highlight .ni{color:#c5c8c6 !important}.highlight .ne{color:#c66 !important}.highlight .nf{color:#81a2be !important}.highlight .nl{color:#c5c8c6 !important}.highlight .nn{color:#f0c674 !important}.highlight .nx{color:#81a2be !important}.highlight .py{color:#c5c8c6 !important}.highlight .nt{color:#8abeb7 !important}.highlight .nv{color:#c66 !important}.highlight .ow{color:#8abeb7 !important}.highlight .w{color:#c5c8c6 !important}.highlight .mf{color:#de935f !important}.highlight .mh{color:#de935f !important}.highlight .mi{color:#de935f !important}.highlight .mo{color:#de935f !important}.highlight .sb{color:#b5bd68 !important}.highlight .sc{color:#c5c8c6 !important}.highlight .sd{color:#969896 !important}.highlight .s2{color:#b5bd68 !important}.highlight .se{color:#de935f !important}.highlight .sh{color:#b5bd68 !important}.highlight .si{color:#de935f !important}.highlight .sx{color:#b5bd68 !important}.highlight .sr{color:#b5bd68 !important}.highlight .s1{color:#b5bd68 !important}.highlight .ss{color:#b5bd68 !important}.highlight .bp{color:#c5c8c6 !important}.highlight .vc{color:#c66 !important}.highlight .vg{color:#c66 !important}.highlight .vi{color:#c66 !important}.highlight .il{color:#de935f !important}.gist-data{border-color:#fff !important;background-color:rgba(254,67,67,0) !important}::selection{background:#46ccff;color:#fff;text-shadow:none}.page-content img,.post img{cursor:pointer;transition:opacity .2s ease}.page-content img:hover,.post img:hover{opacity:.9}#imageModal .modal-content{background:rgba(0,0,0,0);border:none}#imageModal .modal-body{padding:0}#imageModal img{max-height:90vh;width:auto;max-width:100%}/*# sourceMappingURL=style.css.map */