.hero-wrapper{display:flex;align-items:center;justify-content:space-between;padding:3em 0;margin:0 auto}.hero{max-width:70%}.hero--index{text-align:left}.hero__title{font-size:2.5em;margin-bottom:.5em}.hero__description{font-size:1.2em;line-height:1.6;margin-bottom:1.2em}.hero__description a{color:#007acc;text-decoration:none}.hero__description a:hover{text-decoration:underline}.hero__decoration{max-width:30%}.hero__image{width:100%;height:auto;border-radius:50%}@media(max-width:768px){.hero-wrapper{flex-direction:column-reverse;text-align:center}.hero{max-width:100%;margin-bottom:2em}.hero__decoration{max-width:60%;margin:0 auto}.hero__image{width:80px;height:80px}.hero__title{font-size:2em}.hero__description{font-size:1em}}.article__header{margin-bottom:2rem}.article__title{margin-bottom:.5rem}.article__description{color:inherit;margin-top:1rem}.article__meta-tags{display:flex;justify-content:center;flex-wrap:wrap;gap:1rem;margin-bottom:1.5rem;font-size:.9rem;color:inherit}.article__meta{display:flex;gap:.5rem}.article__tag{text-decoration:none;font-size:.9rem}.article__tag:hover{text-decoration:underline}.article__content{margin:2rem 0;line-height:1.7}.article__footer{text-align:center;margin-top:2rem}.article__back-link{text-decoration:none}.article__back-link:hover{text-decoration:underline}*,*::before,*::after{box-sizing:border-box}*{margin:0;padding:0;font:inherit}img,picture,svg,video{display:block;max-width:100%}html{font-size:100%;height:100%;margin-left:calc(100vw - 100%);color-scheme:dark light}body{background-color:var(--color-background);color:var(--color-text);font-family:inter,sans-serif;font-weight:400;margin:0 auto;min-height:100%;display:flex;flex-direction:column}.container{margin:0 auto;max-width:900px;min-height:100%;padding:0 1rem}h1,h2,h3,h4,h5{text-wrap:balance}h1{font-size:2.5rem;font-weight:700;line-height:1.2;margin-top:2rem;margin-bottom:1rem}h2{font-size:2rem;font-weight:700;line-height:1.3;margin-top:1.8rem;margin-bottom:.9rem}h3{font-size:1.75rem;font-weight:700;line-height:1.3;margin-top:1.6rem;margin-bottom:.8rem}h4{font-size:1.5rem;font-weight:700;line-height:1.3;margin-top:1.4rem;margin-bottom:.7rem}h5{font-size:1.25rem;font-weight:700;line-height:1.3;margin-top:1.2rem;margin-bottom:.6rem}h6{font-size:1rem;font-weight:700;line-height:1.3;margin-top:1rem;margin-bottom:.5rem}p{font-size:1rem;line-height:1.6;margin-bottom:1.5rem}strong{font-weight:700}em{font-style:italic}strong em,em strong{font-weight:700;font-style:italic;color:var( --color-text )}ul{list-style-position:inside}ol{list-style-position:inside}:root[data-theme=light]{--color-primary:#ff9800;--color-secondary:#f5f5f5;--color-accent:#ff5722;--color-error:#e53935;--color-text:#212121;--color-text-muted:#757575;--color-background:#ffffff;--color-surface:#fafafa;--color-border:#e0e0e0;--color-link:#ff9800;--color-link-hover:#ff5722;--color-inline-code-bg:#f4f4f4;--color-inline-code-text:#ff9800;--color-inline-code-border:#e0e0e0}:root[data-theme=dark]{--color-primary:#ffb74d;--color-secondary:#424242;--color-accent:#ff7043;--color-error:#e57373;--color-text:#eeeeee;--color-text-muted:#bdbdbd;--color-background:#13171f;--color-surface:#1f232a;--color-border:#424242;--color-link:#ffb74d;--color-link-hover:#ff7043;--color-inline-code-bg:#1f232a;--color-inline-code-text:#ffb74d;--color-inline-code-border:#424242}:root[data-theme=dark] .shiki,:root[data-theme=dark] .shiki span{color:var(--shiki-dark)!important;background-color:var(--shiki-dark-bg)!important;font-style:var(--shiki-dark-font-style)!important;font-weight:var(--shiki-dark-font-weight)!important;text-decoration:var(--shiki-dark-text-decoration)!important}code:not(.shiki code){background-color:var(--color-inline-code-bg);color:var(--color-inline-code-text);padding:.2em .4em;border:1px solid var(--color-inline-code-border);font-family:inter,monospace;border-radius:4px;font-size:.95em}pre{padding:1rem;overflow-x:auto;border:.8px solid var(--color-border);border-radius:.5rem}.code-adaptive{position:relative;border-radius:8px;margin:1rem 0;box-shadow:0 4px 8px rgba(var(--color-text),.1),0 2px 4px rgba(var(--color-text-muted),.06)}.copy-container{position:relative;display:inline-block}.copy-btn{position:absolute;top:8px;right:8px;background:var(--color-surface);border:1px solid var(--color-border);color:var(--color-text-muted);border-radius:4px;padding:4px 8px;font-size:14px;cursor:pointer;opacity:0;transition:opacity .2s ease-in-out}.copy-btn:hover{color:var(--color-primary)}.code-adaptive:hover .copy-btn{opacity:1}.copy-tooltip{position:absolute;top:50%;left:110%;transform:translateY(-50%);background-color:var(--color-primary);color:var(--color-surface);padding:4px 8px;border-radius:4px;font-size:12px;opacity:0;visibility:hidden;white-space:nowrap;transition:opacity .2s ease-in-out,visibility .2s ease-in-out}.show-tooltip .copy-tooltip{opacity:1;visibility:visible}a{color:var(--color-link);text-decoration:none}a:hover{color:var(--color-link-hover);text-decoration:underline}ul{margin:1rem 0}ul.list{list-style:none;padding:0}ul.list li{background-color:var(--color-surface);color:var(--color-text);margin:.5rem 0;padding:1rem;text-align:left}hr{margin:2rem 0;border:none;border-bottom:1px solid var(--color-border)}.not-found-container{display:flex;flex-direction:column;align-items:center;justify-content:center;height:80vh;text-align:center;color:var(--color-text)}.not-found-container h1{font-size:8rem;margin-bottom:1rem;color:var(--color-text)}.not-found-container p{font-size:1.6rem;margin-bottom:2rem;color:var(--color-text-muted)}.not-found-container a{font-size:1.4rem;color:var(--color-link);text-decoration:none}.not-found-container a:hover{color:var(--color-link-hover);text-decoration:underline}.tags{margin-top:1rem}.tags a{background-color:var(--color-surface);padding:.2rem .4rem;margin:.2rem;border-radius:.2rem;text-decoration:none;color:var(--color-text)}.tags a:hover{background-color:var(--color-border)}.simple-quote{border-left:2px solid var(--color-border);margin:1.5em 0;padding-left:1rem;color:var(--color-text-muted);font-style:italic}.simple-quote cite{display:block;text-align:right;color:var(--color-text);margin-top:.5em;font-style:normal}.no-articles-message{font-size:1.1em;color:var(--color-text);background-color:var(--color-surface);border-left:4px solid var(--color-primary);padding:10px 15px;margin:20px 0;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,5%)}.bb{border-bottom:1px solid hsl(from var(--color-border) h s l/.5)}.mt-2{margin-top:2px}.site-footer{background-color:var(--color-background);margin-top:auto}.footer-content{max-width:900px;margin:0 auto;padding:1rem}.footer-text{font-size:1rem;color:var(--color-text-muted);margin-bottom:1rem}.social-links{list-style:none;padding:0;margin:0;display:flex;gap:1.5rem}.social-link{font-size:1.5rem;color:var(--color-text);text-decoration:none;transition:color .3s ease}.social-link:hover{color:var(--color-primary)}@media(max-width:768px){.footer-content{flex-direction:column}.social-links{gap:1rem}}.content-group{margin-bottom:2rem}.content-group__list{list-style:none;padding:0}.content-group__item{margin-bottom:1.5rem}.view-all-tags__button{padding:.5rem 1rem;border:1px solid var(--color-border);border-radius:5px;text-decoration:none;color:var(--color-link);transition:all .3s}.view-all-tags__button:hover{background-color:var(--color-link);color:var(--color-surface)}.post-group{margin-bottom:2rem}.post-group__year{color:var(--color-text)}.post-group__list{list-style:none;padding:0}.post-group__item{margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid var(--color-border)}.post-group__item-title{font-size:1.5rem;margin-bottom:.5rem}.post-group__item-description{font-size:1rem;margin-bottom:.5rem;color:var(--color-text-muted)}.post-group__item-date{font-size:.9rem;color:var(--color-text-muted);margin-bottom:1rem}.post-group__item-tags{list-style:none;padding:0;margin:0;display:flex;gap:.5rem}.post-group__item-tag{background-color:var(--color-border);border-radius:4px;padding:.2rem .5rem}.post-group__item-tag a{text-decoration:none;color:var(--color-text);font-size:.9rem}.content-list{margin-bottom:2rem;padding:1rem 0;border-radius:8px}.content-list__header{display:flex;justify-content:space-between;align-items:center}.content-list__title{font-weight:700;color:var(--color-text)}.content-list__view-all{font-size:1rem;color:var(--color-link);text-decoration:none;border:1px solid var(--color-border);padding:.5rem 1rem;border-radius:4px;transition:background-color .3s,color .3s}.content-list__view-all:hover{background-color:var(--color-link);color:var(--color-surface)}.content-list__items{list-style:none;margin:0;padding:0}.content-list__item{display:flex;justify-content:space-between;padding:.75rem 0;border-bottom:1px solid var(--color-border)}.content-list__item:last-child{border-bottom:none}.content-list__item-title{font-size:1rem;color:var(--color-link);text-decoration:none;flex:1}.content-list__item-title:hover{text-decoration:underline}.content-list__item-date{font-size:.875rem;color:var(--color-text-muted);white-space:nowrap}.content-list__no-items-message{font-size:1rem;color:var(--color-text-muted);text-align:center}.site-header{background-color:var(--color-background);position:sticky;top:0;z-index:100;border-bottom:1px solid var(--color-border)}.header-content{max-width:900px;margin:0 auto;padding:.5em 1rem;display:flex;justify-content:space-between;align-items:center}.logo a{font-size:1.25rem;font-weight:500;color:var(--color-text);text-decoration:none}.main-navigation{display:flex}.nav-list{list-style:none;display:flex;gap:1.5rem}.nav-item .nav-link{text-decoration:none;color:var(--color-text-muted);font-size:1rem;font-weight:500;padding:.5rem;border-radius:5px;transition:color .3s,background-color .3s,border .3s}.nav-item .nav-link.active{color:var(--color-text);border:1px solid var(--color-border);border-radius:5px;background-color:var( --color-surface )}.nav-item .nav-link:hover{color:var(--color-text);background-color:var(--color-surface);border-radius:5px}.theme-toggle-wrapper{margin-left:1.5rem}.theme-toggle{background:0 0;border:none;color:var(--color-text);font-size:1.2rem;cursor:pointer;transition:color .3s}.theme-toggle:hover{color:var(--color-link)}