.sl-badge{border:1px solid var(--badge-bg);width:fit-content;height:22px;color:var(--badge-text);background-color:var(--badge-bg);border-radius:4px;justify-content:center;align-items:center;padding-left:.563rem;padding-right:.563rem;font-size:.875rem;line-height:20px;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter,backdrop-filter;transition-duration:.2s;transition-timing-function:cubic-bezier(0,0,.2,1);display:inline-flex}.now-card{gap:var(--sp-2);height:100%;padding:var(--sp-3);border:1px solid var(--border);border-radius:var(--sp-05);background-color:var(--bg-neutral);color:var(--text-base-content);flex-direction:column;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;position:relative}.now-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 8px 20px -8px #00000040}.now-card>.now-card-kicker{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secodary-content);margin:0;font-size:.75rem;font-weight:500}.now-card a{color:var(--primary);text-decoration:none;transition:color .15s}.now-card a:hover{color:var(--header-link-hover)}.now-card svg{width:.85rem;height:.85rem;color:var(--text-secodary-content);display:inline-block}@media (prefers-reduced-motion:reduce){.now-card,.now-card:hover{transition:none;transform:none}}.back-to-top{bottom:var(--sp-4);right:var(--sp-4);z-index:900;align-items:center;gap:var(--sp-2);padding:var(--sp-2) var(--sp-3);letter-spacing:.08em;text-transform:uppercase;color:var(--badge-text);background-color:var(--primary);cursor:pointer;border:none;border-radius:9999px;font-size:.75rem;font-weight:500;transition:transform .2s,box-shadow .2s;display:inline-flex;position:fixed;box-shadow:0 4px 12px #0000002e}.back-to-top:hover{transform:translateY(-2px);box-shadow:0 6px 16px #0000003d}.back-to-top:focus-visible{outline:2px solid var(--text-base-content);outline-offset:2px}.back-to-top svg{width:1rem;height:1rem}.back-to-top-enter-active,.back-to-top-leave-active{transition:opacity .2s,transform .2s}.back-to-top-enter-from,.back-to-top-leave-to{opacity:0;transform:translateY(.5rem)}@media (width<=480px){.back-to-top span{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.back-to-top{padding:var(--sp-3)}}@media (prefers-reduced-motion:reduce){.back-to-top,.back-to-top-enter-active,.back-to-top-leave-active{transition:none}.back-to-top:hover{transform:none}}.book-dialog{width:min(36rem, calc(100vw - var(--sp-4)));padding:var(--sp-4);border:1px solid var(--border);border-radius:var(--sp-05);background-color:var(--bg-neutral);color:var(--text);margin:auto;position:relative;box-shadow:0 24px 48px -24px #0009}.book-dialog::backdrop{backdrop-filter:blur(2px);background-color:#0000008c}.book-dialog__close{top:var(--sp-2);right:var(--sp-2);width:var(--sp-4);height:var(--sp-4);border:1px solid var(--border);color:var(--text-secodary-content);cursor:pointer;background-color:#0000;border-radius:50%;font-size:.9rem;line-height:1;transition:color .15s,border-color .15s;position:absolute}.book-dialog__close:hover{color:var(--primary);border-color:var(--primary)}.book-dialog>h2{margin:0 var(--sp-5) 0 0;color:var(--text-base-content);font-size:1.5rem;line-height:1.25}.book-dialog__meta{gap:var(--sp-1);margin:var(--sp-1) 0 0;letter-spacing:.08em;text-transform:uppercase;color:var(--text-secodary-content);flex-wrap:wrap;font-size:.75rem;font-weight:500;display:flex}.book-dialog__meta>span+span:before{content:"·";margin-right:var(--sp-1)}.book-dialog__link{align-items:center;gap:var(--sp-1);margin-top:var(--sp-2);color:var(--primary);font-size:.875rem;text-decoration:none;display:inline-flex}.book-dialog__link:hover{text-decoration:underline}.book-dialog__link svg{width:.75rem;height:.75rem}.book-dialog>hr{margin:var(--sp-3) 0;border:0;border-top:1px solid var(--border)}.book-dialog p{line-height:1.7}.book-dialog p:last-child{margin-bottom:0}.book-spine{width:var(--book-width);height:var(--book-height);padding:var(--sp-1) var(--sp-05);color:var(--book-ink);cursor:pointer;background-color:var(--book-color);background-image:linear-gradient(to right, var(--book-lit), var(--book-color) 45%, var(--book-shade));border:0;border-radius:2px;font-family:inherit;transition:transform .2s,box-shadow .2s;position:relative;overflow:hidden;box-shadow:inset 1px 0 #ffffff24,inset -1px 0 #00000040,inset 0 -2px #00000029,0 3px 8px -2px #00000059}.book-spine__text{justify-content:flex-start;align-items:flex-start;gap:var(--sp-05);writing-mode:vertical-rl;flex-direction:column;width:100%;height:100%;display:flex;transform:rotate(180deg)}.book-spine__title{letter-spacing:.01em;font-size:.75rem;font-weight:600;line-height:1.2}.book-spine__author{letter-spacing:.04em;text-transform:uppercase;opacity:.78;font-size:.62rem;line-height:1.2}.book-spine:hover{transform:translateY(-10px);box-shadow:inset 1px 0 #ffffff24,inset -1px 0 #00000040,inset 0 -2px #00000029,0 14px 22px -8px #00000080}.book-spine:focus-visible{outline:2px solid var(--primary);outline-offset:3px;transform:translateY(-10px)}@media (prefers-reduced-motion:reduce){.book-spine,.book-spine:hover,.book-spine:focus-visible{transition:none;transform:none}}a.coffee{padding:var(--sp-2) var(--sp-4);gap:var(--sp-1);border-radius:var(--sp-1);color:var(--white);background:var(--primary);justify-content:center;align-items:center;font-size:1.25rem;font-weight:600;line-height:1.75rem;text-decoration:none;display:flex}a.coffee:hover{color:var(--white);background:color-mix(in srgb, var(--primary), black 15%)}a.coffee svg{align-items:center;display:flex}section.container{color:var(--text);overflow:hidden}section.container>div{padding:var(--sp-8) var(--sp-3);max-width:64rem;margin:0 auto}article.device-card{border:1px solid var(--border);border-radius:var(--sp-05);background-color:var(--bg-neutral);flex-direction:column;transition:transform .2s,border-color .2s,box-shadow .2s;display:flex;position:relative;overflow:hidden}article.device-card:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 8px 20px -8px #00000040}article.device-card figure{padding:var(--sp-3);background-color:var(--white);border-bottom:1px solid var(--border);justify-content:center;align-items:center;width:100%;margin:0;display:flex;overflow:hidden}article.device-card figure img{object-fit:contain;width:100%;height:auto;display:block}article.device-card>div{gap:var(--sp-2);padding:var(--sp-3);color:var(--text-base-content);flex-direction:column;flex:auto;display:flex}article.device-card>div>div{gap:var(--sp-1);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;font-size:.75rem;line-height:1.4;display:flex}article.device-card>div>p{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secodary-content);flex:none;margin:0;font-size:.75rem;font-weight:500}article.device-card>div>h2{align-items:center;gap:var(--sp-1);margin:0;font-size:1.4rem;line-height:1.25;display:flex}article.device-card>div>h2>a{color:var(--text-base-content);text-decoration:none;transition:color .15s}article.device-card>div>h2>a:hover{color:var(--primary)}article.device-card>div>h2 svg{width:1rem;height:1rem;color:var(--text-secodary-content);display:inline-block}@media (prefers-reduced-motion:reduce){article.device-card,article.device-card:hover{transition:none;transform:none}}.footer{color:var(--text);border-top:1px solid var(--border)}.footer>div{padding:var(--sp-4) var(--sp-3);justify-content:center;align-items:center;gap:var(--sp-3);flex-direction:column;max-width:64rem;margin:0 auto;display:flex}@media (width>=640px){.footer>div{flex-direction:row}}.footer>div>span{font-family:var(--font-serif);letter-spacing:-.01em;color:var(--text-base-content);font-size:1.25rem;font-weight:700;line-height:1.75rem}.footer>div>p{margin:var(--sp-2) 0 0 0;color:var(--text-content-dark);font-size:.875rem;line-height:1.25rem;display:flex}@media (width>=640px){.footer>div>p{padding:var(--sp-1) 0 var(--sp-1) var(--sp-2);border-left-width:2px;margin-top:0}}.footer>div>p a{color:var(--primary);margin-left:.25rem}.footer>div>.social{margin-top:var(--sp-2);justify-content:center;gap:.75rem;width:9rem;display:flex}@media (width>=640px){.footer>div>.social{margin-top:0}}@media (width>=768px){.footer>div>.social{justify-content:flex-end}}.footer>div>.social>a{color:var(--text-base-content)!important}.footer>div>.social>a svg{width:1.25rem;height:1.25rem}.footer>div>.social a:hover{color:var(--primary)}p.gaming-platforms.platforms{margin-top:0}p.gaming-platforms.platforms a{margin:0 var(--sp-05);color:#fff;text-decoration:none}.halloween-section{margin-top:var(--sp-5)}.halloween-section>h2{align-items:center;gap:var(--sp-2);margin-bottom:var(--sp-3);color:var(--text-base-content);display:flex}.halloween-section>h2>span{line-height:1}.halloween-section .halloween-chips{gap:var(--sp-2);border-top-width:0;flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.halloween-section .halloween-chips>li{font-size:inherit;margin:0;padding:0;list-style:none}.halloween-section .halloween-chip{align-items:center;gap:var(--sp-2);padding:var(--sp-1) var(--sp-2);border:1px solid var(--border);border-radius:var(--sp-05);background-color:var(--bg-neutral);color:var(--text-base-content);line-height:1.3;text-decoration:none;transition:transform .2s,border-color .2s,box-shadow .2s;display:inline-flex}.halloween-section button.halloween-chip{font:inherit;text-align:left;cursor:pointer}.halloween-section button.halloween-chip:after{content:"";border-right:2px solid var(--text-secodary-content);border-bottom:2px solid var(--text-secodary-content);flex:none;width:.4em;height:.4em;transition:transform .26s;transform:translateY(-.1em)rotate(45deg)}.halloween-section button.halloween-chip.open:after{transform:translateY(.05em)rotate(225deg)}.halloween-section .halloween-chip:hover{border-color:var(--primary);transform:translateY(-2px);box-shadow:0 8px 20px -8px #00000040}.halloween-section .halloween-chip:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.halloween-section .halloween-chip.featured,.halloween-section .halloween-chip.open{border-color:var(--primary);box-shadow:inset 0 0 0 1px var(--primary)}.halloween-section .halloween-chip .chip-title{font-weight:500}.halloween-section .halloween-chip svg{width:.9rem;height:.9rem;color:var(--text-secodary-content);display:inline-block}.halloween-section .halloween-accordion-wrap{opacity:1;grid-template-rows:1fr;display:grid}.halloween-section .halloween-accordion-clip{min-height:0;overflow:hidden}.halloween-section .halloween-accordion{margin:var(--sp-2) 0 0;padding:var(--sp-2);border-left:3px solid var(--primary);border-radius:0 var(--sp-05) var(--sp-05) 0;background-color:var(--bg-neutral);color:var(--text-base-content);font-size:1rem;animation:.2s halloween-accordion-swap}@keyframes halloween-accordion-swap{0%{opacity:0;transform:translateY(-2px)}to{opacity:1;transform:none}}.halloween-accordion-enter-active,.halloween-accordion-leave-active{transition:grid-template-rows .26s,opacity .26s}.halloween-accordion-enter-from,.halloween-accordion-leave-to{opacity:0;grid-template-rows:0fr}@media (prefers-reduced-motion:reduce){.halloween-section .halloween-chip,.halloween-section .halloween-chip:hover{transition:none;transform:none}.halloween-section button.halloween-chip:after{transition:none}.halloween-section .halloween-accordion{animation:none}.halloween-accordion-enter-active,.halloween-accordion-leave-active{transition:none}}.header{color:var(--text-base-content);border-bottom:1px solid var(--border)}.header>div{padding:var(--sp-3);flex-flow:column wrap;align-items:center;max-width:64rem;margin:0 auto;display:flex}@media (width>=768px){.header>div{flex-direction:row}}.header>div>a{margin-bottom:var(--sp-2);color:var(--text-base-content);align-items:center;font-weight:500;display:flex}@media (width>=768px){.header>div>a{margin-bottom:0}}.header>div>a img{width:2.5rem;height:2.5rem;color:var(--white);border:2px solid var(--primary);border-radius:50%;transition:box-shadow .2s ease-in-out}.header>div>a img:hover{box-shadow:0 0 5px var(--primary)}.header>div>a span{margin-left:var(--sp-2);font-family:var(--font-serif);letter-spacing:-.01em;font-size:1.5rem;font-weight:700;line-height:1.75rem}.header>div>nav{letter-spacing:.08em;text-transform:uppercase;align-items:center;gap:var(--sp-3);flex-wrap:wrap;justify-content:center;font-size:.75rem;font-weight:500;line-height:1.5rem;display:flex}@media (width<=767px){html[data-season=halloween] .header>div>nav{gap:var(--sp-2)}}@media (width>=768px){.header>div>nav{margin-left:auto}}.header>div>nav>a.navitem{color:var(--text-base-content);transition:color .15s}.header>div>nav>a.navitem:hover{color:var(--header-link-hover);text-decoration:underline}.header>div>nav>a.router-link-active{text-decoration:underline}.header>div>nav a#theme{cursor:pointer;width:1.5rem;height:1.5rem;padding-top:0}.header>div>nav a#theme svg{width:1.5rem;height:1.5rem;transition:transform .3s}.header>div>nav a#theme:hover svg,.header>div>nav a#theme:focus-visible svg{transform:rotate(20deg)}.header>div>nav>a.event-nav{transform:scale(1.7)}@media (prefers-reduced-motion:reduce){.header>div>nav a#theme svg{transition:none}.header>div>nav a#theme:hover svg,.header>div>nav a#theme:focus-visible svg{transform:none}}div.outdated{gap:var(--sp-2);width:100%;margin:var(--sp-5) 0;padding:var(--sp-3);background-color:var(--bg-neutral);border-left:3px solid var(--primary);color:var(--text-base-content);text-align:start;grid-template-columns:auto minmax(auto,1fr);grid-auto-flow:column;align-items:start;line-height:1.6;display:grid}div.outdated svg{width:1.5rem;height:1.5rem;stroke:var(--primary);margin-top:.1em}div.outdated strong{letter-spacing:.06em;text-transform:uppercase;color:var(--primary);font-weight:700;display:inline}.pwa-banner{bottom:var(--sp-2);left:var(--sp-2);right:var(--sp-2);z-index:1000;max-width:28rem;margin:0 auto;position:fixed}.banner-content{background:var(--bg-neutral);border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--sp-05);padding:var(--sp-2);justify-content:space-between;align-items:center;gap:var(--sp-2);backdrop-filter:blur(8px);display:flex;position:relative;box-shadow:0 8px 20px -8px #00000040}.banner-info{align-items:center;gap:var(--sp-2);flex:1;min-width:0;display:flex}.banner-icon{background:var(--primary);border-radius:var(--sp-05);width:2rem;height:2rem;color:var(--white);flex-shrink:0;justify-content:center;align-items:center;display:flex}.banner-icon svg{width:1rem;height:1rem}.banner-text{flex:1;min-width:0}.banner-text h4{margin:0 0 var(--sp-05) 0;font-family:var(--font-serif);color:var(--text-base-content);font-size:.95rem;font-weight:500;line-height:1.3}.banner-text p{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secodary-content);margin:0;font-size:.75rem;font-weight:500;line-height:1.4}.banner-actions{align-items:center;gap:var(--sp-1);flex-shrink:0;display:flex}.install-btn{background:var(--primary);color:var(--white);border-radius:var(--sp-05);padding:var(--sp-05) var(--sp-2);letter-spacing:.04em;cursor:pointer;white-space:nowrap;border:none;font-size:.75rem;font-weight:500;transition:background-color .15s,transform .15s}.install-btn:hover{background:var(--header-link-hover);transform:translateY(-1px)}.install-btn:active{transform:translateY(0)}.ios-hint{align-items:center;gap:var(--sp-05);color:var(--text-secodary-content);text-align:center;max-width:4rem;font-size:.7rem;display:flex}.ios-hint span{white-space:nowrap}.ios-hint svg{width:.75rem;height:.75rem;color:var(--primary);flex-shrink:0}.dismiss-btn{color:var(--text-secodary-content);cursor:pointer;padding:var(--sp-05);background:0 0;border:none;border-radius:50%;justify-content:center;align-items:center;width:1.5rem;height:1.5rem;line-height:1;transition:background-color .15s,color .15s;display:flex}.dismiss-btn svg{width:1rem;height:1rem}.dismiss-btn:hover{background:var(--bg);color:var(--text-base-content)}.banner-enter-active{transition:all .4s cubic-bezier(.25,.8,.25,1)}.banner-leave-active{transition:all .3s cubic-bezier(.4,0,1,1)}.banner-enter-from{opacity:0;transform:translateY(100%)scale(.9)}.banner-leave-to{opacity:0;transform:translateY(50px)scale(.95)}.banner-enter-to,.banner-leave-from{opacity:1;transform:translateY(0)scale(1)}@media (width<=640px){.pwa-banner{bottom:var(--sp-1);left:var(--sp-1);right:var(--sp-1)}.banner-content{padding:var(--sp-1) var(--sp-2);gap:var(--sp-1)}.banner-info{gap:var(--sp-1)}.banner-icon{width:1.5rem;height:1.5rem}.banner-icon svg{width:.875rem;height:.875rem}.banner-text h4{font-size:.8rem}.banner-text p{font-size:.7rem}.install-btn{padding:var(--sp-05) var(--sp-1);font-size:.7rem}.ios-hint{max-width:3rem;font-size:.65rem}.dismiss-btn{width:1.25rem;height:1.25rem}.dismiss-btn svg{width:.875rem;height:.875rem}}@media (prefers-reduced-motion:reduce){.install-btn,.install-btn:hover,.install-btn:active{transition:none;transform:none}.banner-enter-active,.banner-leave-active{transition:none}.banner-enter-from,.banner-leave-to{transform:none}}div.pagination{padding-top:var(--sp-3);padding-bottom:var(--sp-4);margin-top:.5rem}@media (width>=768px){div.pagination{margin-top:var(--sp-2)}}div.pagination nav{align-items:center;gap:var(--sp-2);grid-template-columns:1fr auto 1fr;display:grid}div.pagination nav>.prev{justify-self:start}div.pagination nav>.next{justify-self:end}div.pagination nav>.prev,div.pagination nav>.next{color:var(--primary);white-space:nowrap;padding:var(--sp-1) var(--sp-2);border-radius:2px;text-decoration:none;transition:all .3s}div.pagination nav>a:hover,div.pagination nav>a:focus-visible{color:var(--white);background-color:var(--primary)}div.pagination nav>[aria-disabled=true]{color:var(--text-base-content);opacity:.4;cursor:default}div.pagination nav>.current{white-space:nowrap;text-align:center}@media (width<=480px){div.pagination nav{gap:var(--sp-1);grid-template-columns:1fr}div.pagination nav>.prev,div.pagination nav>.next{text-align:center;padding:var(--sp-1) var(--sp-2);border:1px solid;justify-self:stretch}div.pagination nav>.current{padding:var(--sp-05) 0;font-size:.9em}}li.post-preview{padding:var(--sp-4) 0;border-bottom:1px solid var(--border);flex-wrap:wrap;display:flex;position:relative}li.post-preview.pinned{margin:var(--sp-4) 0;padding:var(--sp-3);border:0;border-bottom:1px solid var(--border);border-left:3px solid var(--primary);background-color:var(--bg-neutral);grid-template-columns:1fr;align-content:start;display:grid}li.post-preview.pinned .badge{justify-self:start;align-items:center;gap:var(--sp-1);margin-bottom:var(--sp-3);padding:var(--sp-05) var(--sp-2);background-color:var(--badge-bg);color:var(--badge-text);cursor:help;letter-spacing:.12em;text-transform:uppercase;border-radius:999px;grid-column:1/-1;font-size:.7rem;font-weight:600;line-height:1.7;display:inline-flex;position:static}li.post-preview.pinned .badge:before{content:"";background-color:currentColor;flex:none;width:.4rem;height:.4rem;transform:rotate(45deg)}@media (width>=768px){li.post-preview.pinned{grid-template-columns:14rem 1fr}li.post-preview.pinned>time{width:auto}li.post-preview{flex-wrap:nowrap}}li.post-preview>time{margin-bottom:var(--sp-2);flex-direction:column;display:flex}@media (width>=768px){li.post-preview>time{width:16rem;margin-bottom:0}}li.post-preview>time span{margin-top:var(--sp-05);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secodary-content);font-size:.75rem;font-weight:500}li.post-preview>div:last-child{width:100%}@media (width>=768px){li.post-preview>div:last-child{flex-grow:1}}li.post-preview>div:last-child h2{margin-top:0;margin-bottom:var(--sp-2);color:var(--text-base-content);font-size:1.6rem;line-height:1.25}li.post-preview>div:last-child>div{gap:var(--sp-1) var(--sp-2);flex-wrap:wrap;display:flex}li.post-preview>div:last-child>div>a{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secodary-content);font-size:.75rem;font-weight:500;line-height:1.4;transition:color .15s}li.post-preview>div:last-child>div>a:hover{color:var(--primary);text-decoration:none}li.post-preview>div:last-child p{margin-top:var(--sp-2);color:var(--text);line-height:1.7}li.post-preview>div:last-child>a:last-child{margin-top:var(--sp-3);letter-spacing:.08em;text-transform:uppercase;color:var(--primary);align-items:center;font-size:.75rem;font-weight:500;display:inline-flex}li.post-preview>div:last-child>a:last-child svg{margin-left:var(--sp-1);width:1rem;height:1rem;transition:transform .15s}li.post-preview>div:last-child>a:last-child:hover svg,li.post-preview>div:last-child>a:last-child:focus-visible svg{transform:translate(4px)}@media (prefers-reduced-motion:no-preference){@supports (animation-timeline:view()){@keyframes post-reveal{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}li.post-preview:not(.pinned){animation:linear both post-reveal view();animation-range:entry cover 25%}}}ul.posts-list{border-top:1px solid var(--border);margin:var(--sp-4) 0;padding:0;position:relative}div.published{margin:0 0 var(--sp-1);font-family:var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secodary-content);font-size:.75rem;font-weight:500;line-height:1.4}p.reading-time.reading{margin:var(--sp-2) 0 0}p.reading-time.reading small{font-family:var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secodary-content);font-size:.75rem;font-weight:500}form.search{margin:var(--sp-5) 0}form.search div{align-items:center;display:flex}form.search input{border-color:var(--primary);appearance:none;width:100%;height:3rem;padding-left:var(--sp-2);padding-right:var(--sp-2);border:1px solid var(--primary);font-size:1rem;line-height:1.5rem}@media (width>=768px){form.search input{max-width:36rem}}form.search input:disabled{opacity:.7;cursor:not-allowed;border-color:var(--text-secondary-content)}form.search input{transition:box-shadow .2s}form.search input:focus{box-shadow:0 2px 12px -4px var(--primary);border-color:var(--primary);outline:var(--primary);outline-offset:2px;outline-width:2px;outline-style:solid}form.search svg{width:1.5rem;height:1.5rem}form.search button{cursor:pointer;user-select:none;width:3rem;height:3rem;min-height:3rem;color:var(--text-base-content);background-color:oklch(93% 0 0);justify-content:center;align-items:center;padding:0;display:inline-flex}.clear-enter-active,.clear-leave-active{transition:opacity .18s,transform .18s}.clear-enter-from,.clear-leave-to{opacity:0;transform:scale(.6)}.count-enter-active,.count-leave-active{transition:opacity .15s,transform .15s;display:inline-block}.count-enter-from{opacity:0;transform:translateY(-.4em)}.count-leave-to{opacity:0;transform:translateY(.4em)}@media (prefers-reduced-motion:reduce){form.search input,.clear-enter-active,.clear-leave-active,.count-enter-active,.count-leave-active{transition:none}}.sharing{padding:var(--sp-1) 0 var(--sp-3);flex-direction:column;justify-content:center;align-items:center;font-size:.875rem;line-height:1.25rem;display:flex}@media screen and (width>=768px){.sharing{flex-direction:row;align-items:start}}.sharing a{cursor:pointer;text-decoration:underline dotted}.sharing a:hover{color:var(--primary)}.sharing span{padding:0 var(--sp-1);display:inline-block}.tip-section{margin:0 auto;border-top-width:0!important}.tip-text{margin-bottom:var(--sp-2);font-size:.875rem;font-style:italic;line-height:1.25rem}.tip-text span{font-style:normal}.tip-action{margin:0 auto}@media (width>=768px){.tip-action{width:max-content}}.timeline-container{width:100%;max-width:600px;padding:var(--sp-4) var(--sp-2);margin:0 auto}.timeline{--timeline-dot-border:var(--border);margin:0;padding:0;list-style:none;position:relative}.timeline:before{content:"";left:var(--sp-3);background:linear-gradient(180deg, var(--primary,#3b82f6) 0%, var(--primary,#3b82f6) 50%, #cbd5e14d 100%);border-radius:2px;width:3px;position:absolute;top:0;bottom:0}.timeline-item{padding:var(--sp-3) 0 var(--sp-3) var(--sp-8);opacity:.8;cursor:pointer;border-radius:8px;outline:none;margin:0;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative}.timeline-item:hover,.timeline-item:focus{opacity:1;transform:translateX(var(--sp-1))}.timeline-item:focus{outline:2px solid var(--primary,#3b82f6);outline-offset:2px}.timeline-item:before{content:"";background:linear-gradient(135deg, var(--primary,#3b82f6), #1d4ed8);border:3px solid var(--timeline-dot-border,#f5f1eb);z-index:2;border-radius:50%;width:12px;height:12px;transition:all .4s cubic-bezier(.4,0,.2,1);position:absolute;top:50%;left:19.5px;transform:translateY(-50%);box-shadow:0 4px 12px #3b82f64d}.timeline-item:hover:before,.timeline-item:focus:before{background:linear-gradient(135deg, #1d4ed8, var(--primary,#3b82f6));transform:translateY(-50%)scale(1.3);box-shadow:0 6px 20px #3b82f680}.timeline-content{background:var(--timeline-item-bg,#fefcf8);padding:var(--sp-3) var(--sp-3);border:1px solid #e2e8f0cc;border-radius:12px;transition:all .4s cubic-bezier(.4,0,.2,1);position:relative;overflow:hidden;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.timeline-content:before{content:"";background:linear-gradient(90deg, var(--primary,#3b82f6), #1d4ed8);transform-origin:0;height:3px;transition:transform .4s cubic-bezier(.4,0,.2,1);position:absolute;top:0;left:0;right:0;transform:scaleX(0)}.timeline-item:hover .timeline-content,.timeline-item:focus .timeline-content{border-color:var(--primary,#3b82f6);transform:translateY(-2px);box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.timeline-item:hover .timeline-content:before,.timeline-item:focus .timeline-content:before{transform:scaleX(1)}.timeline-text{color:#1f2937;letter-spacing:.01em;font-size:1rem;font-weight:500;line-height:1.6;transition:color .3s;display:block}.timeline-item:hover .timeline-text,.timeline-item:focus .timeline-text{color:var(--primary,#3b82f6)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=640px){.timeline-container{padding:var(--sp-2) var(--sp-1)}.timeline:before{left:var(--sp-2)}.timeline-item{padding:var(--sp-2) 0 var(--sp-2) var(--sp-6)}.timeline-item:before{width:10px;height:10px;top:50%;left:11.5px;transform:translateY(-50%)}.timeline-content{padding:var(--sp-2) var(--sp-2);border-radius:var(--sp-1)}.timeline-text{font-size:.9rem}}@media (prefers-color-scheme:dark){.timeline-title{color:var(--text-primary,#f9fafb)}.timeline-description{color:var(--text-secondary,#d1d5db)}.timeline-content{background:var(--timeline-item-bg,#2d3748);border-color:#374151cc}.timeline-text{color:#f9fafb}.timeline-item:hover .timeline-text,.timeline-item:focus .timeline-text{color:#60a5fa}.timeline-item:before{border-color:var(--timeline-dot-border,#68717d)}}@media (prefers-reduced-motion:reduce){.timeline-item,.timeline-item:before,.timeline-content,.timeline-content:before,.timeline-text{transition:none;animation:none}.timeline-item:hover,.timeline-item:focus{transform:none}.timeline-item:hover:before,.timeline-item:focus:before{transform:translateY(-50%)}.timeline-item:hover .timeline-content,.timeline-item:focus .timeline-content{transform:none}.timeline-item:hover .timeline-content:before,.timeline-item:focus .timeline-content:before{transform:scaleX(1)}}@media (prefers-reduced-motion:no-preference){.timeline-item{animation:.6s ease-out forwards fadeInUp;animation-delay:calc(var(--index,0) * .1s)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:.8;transform:translateY(0)}}.timeline-item:first-child{--index:0}.timeline-item:nth-child(2){--index:1}.timeline-item:nth-child(3){--index:2}.timeline-item:nth-child(4){--index:3}.timeline-item:nth-child(5){--index:4}.timeline-item:nth-child(6){--index:5}.timeline-item:nth-child(7){--index:6}.timeline-item:nth-child(8){--index:7}.timeline-item:nth-child(9){--index:8}.timeline-item:nth-child(10){--index:9}}@media (prefers-contrast:high){.timeline-item:before,.timeline-content{border-width:2px;border-color:#000}.timeline-item:focus{outline-width:3px}}article.now-event>h2{margin:0;font-size:1.5rem;line-height:1.2}article.now-event>h2 a{align-items:center;gap:var(--sp-1);display:inline-flex}article.now-event .now-event-date,article.now-github .now-github-state{color:var(--text-secodary-content);margin:0}article.now-github>ul{gap:var(--sp-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}article.now-github li{gap:var(--sp-05);padding-bottom:var(--sp-2);border-bottom:1px solid var(--border);flex-direction:column;display:flex}article.now-github li:last-child{border-bottom:none;padding-bottom:0}article.now-github li>a{align-items:center;gap:var(--sp-05);font-size:1.1rem;font-weight:600;display:inline-flex}article.now-github .now-github-desc{color:var(--text-secodary-content);margin:0;font-size:.9rem}article.now-watching>ul{gap:var(--sp-2);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}article.now-watching li{gap:var(--sp-05);flex-direction:column;display:flex}article.now-watching .now-watching-type{letter-spacing:.08em;text-transform:uppercase;color:var(--text-secodary-content);font-size:.75rem}article.now-watching li a{align-items:center;gap:var(--sp-05);font-size:1.15rem;font-weight:600;display:inline-flex}article.now-weather{align-items:flex-start}article.now-weather .now-weather-state{color:var(--text-secodary-content);margin:0}article.now-weather .now-weather-emoji{margin:0;font-size:3rem;line-height:1}article.now-weather .now-weather-temp{color:var(--text-base-content);margin:0;font-size:2.5rem;font-weight:700;line-height:1}article.now-weather .now-weather-meta{color:var(--text-secodary-content);margin:0}article.now-work>h2{color:var(--text-base-content);margin:0;font-size:1.5rem;line-height:1.2}article.now-work .now-work-company{color:var(--primary);margin:0;font-size:1.1rem;font-weight:600}article.now-work .now-work-city{color:var(--text-secodary-content);margin:0}.about-page article{max-width:none}.about-page article h1{line-height:1}@media (width>=768px){.about-page article h1{line-height:1}}.about-page article a{color:var(--primary)}.books-page>h1{color:var(--text-base-content)}.books-page>p{max-width:40rem;margin-top:var(--sp-3);color:var(--text);font-size:1.125rem;line-height:1.7}.books-page>p:first-of-type{margin-top:var(--sp-4)}.shelf{--shelf-row:20rem;--shelf-plank:10px;margin:var(--sp-5) 0 0;padding:0 var(--sp-2);border:1px solid var(--border);border-radius:var(--sp-05);background-color:var(--bg-neutral);background-image:repeating-linear-gradient(to bottom, transparent 0 calc(var(--shelf-row) - var(--shelf-plank)), var(--border) calc(var(--shelf-row) - var(--shelf-plank)) var(--shelf-row));flex-wrap:wrap;align-content:flex-start;gap:0;list-style:none;display:flex}.shelf__slot{height:var(--shelf-row);padding:0 2px var(--shelf-plank);align-items:flex-end;display:flex}@media (width<=767px){.shelf{--shelf-plank:8px;padding:0 var(--sp-1)}}.devices-page>h1{color:var(--text-base-content)}.devices-page>p{max-width:40rem;margin-top:var(--sp-3);color:var(--text);font-size:1.125rem;line-height:1.7}.devices-page>p:first-of-type{margin-top:var(--sp-4)}.devices-page>ul{margin:var(--sp-5) 0 0;gap:var(--sp-3);border-top-width:0;padding:0;display:grid}@media (width>=768px){.devices-page>ul{grid-template-columns:repeat(1,minmax(0,1fr))}.devices-page ul.multi{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=1024px){.devices-page ul.multi{grid-template-columns:repeat(3,minmax(0,1fr))}}.halloween-page iframe{border:1px solid var(--border);width:100%;height:450px}.home-page>p{font-family:var(--font-serif);color:var(--text-base-content);font-size:1.6rem;font-weight:500;line-height:1.4}@media (width>=768px){.home-page>p{font-size:2rem}}.home-page>section{letter-spacing:.08em;text-transform:uppercase;justify-content:flex-end;font-size:.75rem;font-weight:500;line-height:1.5rem;display:flex}section.now-page>hgroup{margin-bottom:var(--sp-5)}section.now-page>hgroup>h1{margin:0 0 var(--sp-1)}section.now-page>hgroup>p{max-width:42rem;color:var(--text-secodary-content);margin:0}.now-grid{gap:var(--sp-3);grid-template-columns:1fr;display:grid}@media (width>=768px){.now-grid{grid-template-columns:1fr 1fr;grid-template-areas:"work weather""github watching""github event"}.now-grid-work{grid-area:work}.now-grid-weather{grid-area:weather}.now-grid-github{grid-area:github}.now-grid-watching{grid-area:watching}.now-grid-event{grid-area:event}}.post-page h1{color:var(--text-base-content);font-size:3.75rem;line-height:1}.list-enter-active{transition:opacity .28s,transform .28s;transition-delay:min(calc(var(--i,0) * 30ms), .3s)}.list-leave-active{width:100%;transition:opacity .18s,transform .18s;position:absolute}.list-move{transition:transform .3s}.list-enter-from{opacity:0;transform:translateY(8px)}.list-leave-to{opacity:0;transform:scale(.97)}@media (prefers-reduced-motion:reduce){.list-enter-active,.list-leave-active,.list-move{transition:none}}.post-slug>article{max-width:none}.post-slug>article header{max-width:40rem;margin-inline:auto;margin-bottom:var(--sp-6);padding-bottom:var(--sp-4);border-bottom:1px solid var(--border);text-align:left}.post-slug>article header>h1{margin:var(--sp-3) 0}@media (width>=768px){.post-slug>article header>h1{font-size:3rem}}.post-slug>article header>p{margin:var(--sp-2) 0 0 0;font-family:var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--text-secodary-content);font-size:.75rem;font-weight:500}.post-slug>article header>p a{margin:0 var(--sp-05) 0 0;text-transform:uppercase;color:var(--primary);text-decoration:none;display:inline-block}.post-slug>article header>p a:hover{text-decoration:underline}.post-slug>hr{border:0;border-top:1px solid var(--border);margin:var(--sp-3) auto;max-width:40rem}.post-year-index{border-color:#e5e7eb;border-top-width:1px;flex-direction:column;justify-content:flex-start;align-items:flex-start;display:flex}@media (width>=768px){.post-year-index{margin-top:var(--sp-8);margin-left:var(--sp-3);border-top-width:0;flex-direction:row;justify-content:center;align-items:center}}.post-year-index>div:first-child{padding-top:var(--sp-3);padding-bottom:var(--sp-4);margin-left:var(--sp-1)}@media (width>=768px){.post-year-index>div:first-child{margin-top:var(--sp-3)}}.post-year-index h1{text-transform:capitalize}.post-year-index>div:last-child{flex-wrap:wrap;max-width:32rem;display:flex}.post-year-index>div:last-child>div{margin-top:var(--sp-1);margin-bottom:var(--sp-1);margin-right:var(--sp-3);transition-property:all;transition-duration:.3s;transition-timing-function:cubic-bezier(.4,0,.2,1)}.post-year-index>div:last-child>div:hover{text-decoration:underline}.post-year-index>div:last-child>div>a:first-child{margin-right:var(--sp-2);text-transform:uppercase;font-size:.875rem;font-weight:500;line-height:1.25rem}.post-year-index>div:last-child>div>a:last-child{margin-left:calc(var(--sp-1) * -1);color:var(--text);text-transform:uppercase;font-size:.875rem;font-weight:600;line-height:1.25rem}.post-year h1{color:var(--text-base-content)}.post-year p,.tag-page p{margin-bottom:var(--sp-2);color:var(--text-secondary-content);font-size:1.25rem;line-height:1.75rem}.tag-page h1{text-transform:capitalize;color:var(--text-base-content)}.tags-page{border-top-width:1px;border-color:var(--border);flex-direction:column;justify-content:flex-start;align-items:flex-start;display:flex}@media (width>=768px){.tags-page{margin-top:var(--sp-8);margin-left:var(--sp-3);justify-content:center;align-items:center;gap:var(--sp-3);border-top-width:0;flex-direction:row}}.tags-page>hgroup{padding-top:var(--sp-3);padding-bottom:var(--sp-4);margin-left:var(--sp-1)}@media (width>=768px){.tags-page>hgroup{margin-top:var(--sp-3)}}.tags-page h1{text-transform:capitalize}.tags-page>ul{flex-wrap:wrap;max-width:32rem;padding:0;display:flex}.tags-page>ul>li{margin-top:var(--sp-1);margin-bottom:var(--sp-1);margin-right:var(--sp-3);list-style:none}.tags-page>ul>li>a{text-transform:uppercase;letter-spacing:.04em;font-size:.875rem;line-height:1.25rem;display:inline-block}.tags-page>ul>li>a:first-child{margin-right:var(--sp-2);color:var(--primary);background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;font-weight:500;transition:background-size .2s cubic-bezier(.4,0,.2,1),transform .2s cubic-bezier(.4,0,.2,1)}.tags-page>ul>li>a:first-child:hover,.tags-page>ul>li>a:first-child:focus-visible{background-size:100% 1px;transform:translateY(-2px)}.tags-page>ul>li>a:last-child{margin-left:calc(var(--sp-1) * -1);color:var(--text-secodary-content);font-weight:600}@media (prefers-reduced-motion:reduce){.tags-page>ul>li>a:first-child{transition:none}.tags-page>ul>li>a:first-child:hover,.tags-page>ul>li>a:first-child:focus-visible{text-decoration:underline;transform:none}}.xmas-page iframe{border:1px solid var(--border);width:100%;height:450px}
