@font-face{font-family:Noto Sans;font-style:normal;font-weight:400;font-display:swap;src:url(./NotoSans-Regular.EJs74HTT.woff2)}@font-face{font-family:Hack;font-style:normal;font-weight:400;font-display:swap;src:url(./Hack-Regular.C2ah5mHd.woff2)}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--font-body:"Noto Sans", system-ui, sans-serif;--font-mono:"Hack", ui-monospace, monospace;--color-bg:#110e0e;--color-bg-raised:#1c1717;--color-bg-raised-hover:#2a2323;--color-bg-code:#141111;--color-bg-code-inline:#2d2d2d;--color-text:#d9d9d9;--color-text-muted:#c8c0c0;--color-accent:#d86f62;--color-accent-hover:#e0786a;--color-border:#7b352f;--color-note-warning:#a3892a;--color-note-info:#4f9ccc;--color-shadow:#05040459;--color-bg-glow:#d86f621f;--page-gutter:clamp(1rem, 4vw, 2rem);--focus-ring:0 0 0 .18rem #e0786a73;--shadow-card:0 .75rem 2rem var(--color-shadow);font-family:var(--font-body);background:var(--color-bg);color:var(--color-text)}:root[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg:#f8f1eb;--color-bg-raised:#fff8f2;--color-bg-raised-hover:#f1e2d9;--color-bg-code:#f2e8e0;--color-bg-code-inline:#ead9ce;--color-text:#261a18;--color-text-muted:#5a4642;--color-accent:#9b332b;--color-accent-hover:#75251f;--color-border:#c87b70;--color-note-warning:#765f0f;--color-note-info:#246c98;--color-shadow:#4a2d2629;--color-bg-glow:#9b332b1a;--focus-ring:0 0 0 .18rem #75251f3d;--shadow-card:0 .75rem 1.75rem var(--color-shadow)}html{scroll-behavior:smooth;scroll-padding-top:4rem}body{background:radial-gradient(circle at 20vw -10vh, var(--color-bg-glow), transparent 24rem), var(--color-bg);width:100%;min-height:100vh;font-family:var(--font-body);color:var(--color-text);margin:0;padding:0;top:0;left:0;overflow-y:auto}.skipLink{z-index:30;border:1px solid var(--color-border);background:var(--color-bg-raised);min-height:2.1rem;box-shadow:var(--shadow-card);color:var(--color-text);font-family:var(--font-mono);border-radius:999px;align-items:center;padding:.35rem .7rem;font-size:.72rem;line-height:1;transition:background-color .2s ease-in-out,color .2s ease-in-out,transform .2s ease-in-out;display:inline-flex;position:fixed;top:clamp(.65rem,2vw,1rem);left:clamp(.65rem,2vw,1rem);transform:translateY(calc(-100% - 1.5rem))}.skipLink:focus-visible{box-shadow:var(--shadow-card), var(--focus-ring);color:var(--color-accent-hover);outline:none;transform:translateY(0)}a{color:var(--color-accent);text-underline-offset:.18em;text-decoration:none;transition:color .2s ease-in-out,text-decoration-color .2s ease-in-out}a:hover{color:var(--color-accent-hover);text-decoration:underline}a:focus-visible{outline:2px solid var(--color-accent-hover);outline-offset:.25rem}.themeToggle{z-index:20;border:1px solid var(--color-border);background:var(--color-bg-raised);min-height:2.1rem;box-shadow:var(--shadow-card);color:var(--color-text);font-family:var(--font-mono);cursor:pointer;border-radius:999px;align-items:center;gap:.35rem;padding:.3rem .6rem;font-size:.72rem;line-height:1;transition:background-color .2s ease-in-out,border-color .2s ease-in-out,box-shadow .2s ease-in-out,color .2s ease-in-out,transform .2s ease-in-out;display:inline-flex;position:fixed;top:clamp(.65rem,2vw,1rem);right:clamp(.65rem,2vw,1rem)}.themeToggle:hover,.themeToggle:focus-visible{border-color:var(--color-accent-hover);background:var(--color-bg-raised-hover);color:var(--color-accent-hover);transform:translateY(-.1rem)}.themeToggle:focus-visible{box-shadow:var(--shadow-card), var(--focus-ring);outline:none}.themeToggleIcon{justify-content:center;align-items:center;width:1rem;font-size:.9rem;line-height:1;display:inline-flex}.themeToggleText{letter-spacing:.03em}.siteHeader{justify-content:center;align-items:center;width:100%;margin:0;padding:0;display:flex}.title{margin:clamp(2rem, 5vw, 3rem) var(--page-gutter) 0;display:block}.titleText{font-family:var(--font-mono);color:var(--color-text);text-align:center;margin:0 0 .2rem;font-size:2rem;line-height:1.15}.titleSubtext{font-family:var(--font-mono);color:var(--color-text);text-align:center;margin:0;font-size:1rem}.profileLinks{justify-content:center;gap:.35rem;padding:.55rem;display:flex}.linkicon{color:var(--color-text);width:2.25rem;height:2.25rem;box-shadow:none;background:0 0;border:1px solid #0000;border-radius:999px;place-items:center;text-decoration:none;transition:background-color .2s ease-in-out,border-color .2s ease-in-out,box-shadow .2s ease-in-out,color .2s ease-in-out,transform .2s ease-in-out;display:inline-grid;position:relative;overflow:visible}.linkicon:hover,.linkicon:focus-visible{color:var(--color-accent-hover);cursor:pointer;text-decoration:none;transform:translateY(-.04rem)}.linkicon:hover{box-shadow:none;border-color:#0000}.linkicon:focus-visible{box-shadow:var(--focus-ring);border-color:#0000;outline:none}.linkiconImage{z-index:1;color:currentColor;fill:currentColor;width:1rem;height:1rem;transition:color .2s ease-in-out,transform .2s ease-in-out;position:relative}.linkicon:hover .linkiconImage,.linkicon:focus-visible .linkiconImage{transform:scale(1.04)}.linkiconImageStroke{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.9px}.linkiconImageStroke circle{fill:currentColor;stroke:none}.linkiconImageHome{transform:scale(1.06)}.linkicon:hover .linkiconImageHome,.linkicon:focus-visible .linkiconImageHome{transform:scale(1.1)}.linkiconImageGithub{transform:scale(.92)}.linkicon:hover .linkiconImageGithub,.linkicon:focus-visible .linkiconImageGithub{transform:scale(.96)}.hinted:after{content:attr(data-hint);z-index:3;box-sizing:border-box;min-width:max-content;color:var(--color-text);background:var(--color-bg-raised);box-shadow:0 .3rem .75rem var(--color-shadow);opacity:0;font-family:var(--font-mono);white-space:nowrap;pointer-events:none;border:1px solid #0000;border-radius:999px;padding:.2rem .45rem;font-size:.6rem;line-height:1;transition:opacity .2s ease-in-out,transform .2s ease-in-out;position:absolute;top:calc(100% + .35rem);left:50%;transform:translate(-50%,-.2rem)}.hinted:hover:after,.hinted:focus-visible:after{opacity:1;transform:translate(-50%)}.articlesContainer{justify-content:center;width:100%;padding:clamp(1.5rem,3vw,2.5rem) 0 clamp(3rem,5vw,4rem);display:flex}.articleDiscovery{box-sizing:border-box;border:1px solid #0000;border-left:2px solid var(--color-border);background:color-mix(in srgb, var(--color-bg-raised) 82%, transparent);box-shadow:0 .45rem 1.3rem var(--color-shadow);border-radius:.85rem;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:.75rem 1rem;margin:0 0 clamp(1rem,2.5vw,1.5rem);padding:.9rem 1rem;display:grid}.articleSearchField{gap:.4rem;display:grid}.articleSearchLabel{color:var(--color-accent);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.articleSearch{box-sizing:border-box;border:1px solid var(--color-border);background:var(--color-bg-code);width:100%;min-height:2.45rem;color:var(--color-text);font:inherit;border-radius:999px;padding:.55rem .85rem;transition:background-color .2s ease-in-out,box-shadow .2s ease-in-out,border-color .2s ease-in-out}.articleSearch:focus{border-color:var(--color-accent-hover);box-shadow:var(--focus-ring);outline:none}.articleSearchMeta{color:var(--color-text-muted);font-family:var(--font-mono);white-space:nowrap;margin:0;font-size:.72rem;line-height:1.4}.articleColumn{width:min(100% - 2rem,76rem)}.articleFlex{--article-grid-gap:clamp(3rem, 3vw, 6rem);--article-stagger-gap-half:clamp(.625rem, 1.5vw, 1.25rem);gap:var(--article-grid-gap);grid-template-columns:repeat(auto-fit,minmax(min(100%,26rem),1fr));align-items:stretch;display:grid}.articleTitleAndViews{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:1rem;width:100%;margin:0;padding:0;display:grid}.articleTitleBlock{min-width:0}.articleA{cursor:pointer;color:inherit;align-items:stretch;min-width:0;height:100%;text-decoration:none;display:flex}.articleA:hover,.articleA:focus-visible{text-decoration:none}.articleALeft,.articleARight{justify-content:stretch}@media (width>=56rem){.articleFlex{grid-auto-rows:1fr}.articleARight{transform:translateY(calc(50% + var(--article-stagger-gap-half)))}.articleFlexEndsRight{padding-bottom:calc(6rem + var(--article-stagger-gap-half))}}.articleContainer{box-sizing:border-box;background-color:var(--color-bg-raised);cursor:pointer;width:100%;height:100%;min-height:12rem;box-shadow:var(--shadow-card);border:1px solid #0000;border-radius:.3rem;flex-direction:column;margin:0;padding:clamp(1rem,2.5vw,1.35rem);transition:background-color .18s ease-in-out,border-color .18s ease-in-out,box-shadow .18s ease-in-out,transform .18s ease-in-out;display:flex;position:relative;overflow:hidden}.articleContainer:before{content:"";pointer-events:none;background:linear-gradient(135deg, var(--color-accent), transparent 36%);opacity:0;transition:opacity .18s ease-in-out;position:absolute;inset:0}.articleContainerRight{border-left:2px solid var(--color-border)}.articleContainerLeft{border-right:2px solid var(--color-border)}.articleContainer:hover,.articleA:focus-visible .articleContainer{background-color:var(--color-bg-raised-hover);transform:translateY(-.15rem)}.articleContainer:hover:before,.articleA:focus-visible .articleContainer:before{opacity:.1}.articleA:focus-visible{outline:none}.articleA:focus-visible .articleContainer{border-color:var(--color-accent-hover);box-shadow:var(--shadow-card), var(--focus-ring)}.articleA:hover .articleTitle,.articleA:focus-visible .articleTitle{color:var(--color-accent-hover)}.articleHr{text-align:left;width:min(12rem,50%);color:var(--color-border);border:0;border-top:1px solid var(--color-border);height:1px;margin-top:1rem;margin-bottom:1rem;margin-left:0;padding:0;display:block}.articleTitle{color:var(--color-text);margin:0;padding:0;font-size:clamp(1.1rem,.7vw + .95rem,1.3rem);line-height:1.3;text-decoration:none;transition:color .18s ease-in-out;display:block}.articleMeta{color:var(--color-accent);flex-wrap:wrap;align-items:center;gap:.35rem;margin:.4rem 0 0;font-size:.78rem;line-height:1.4;display:flex}.articleViews{width:max-content;color:var(--color-text-muted);flex-direction:column;align-items:center;gap:.25rem;font-size:.75rem;line-height:1;display:inline-flex;position:static}.articleIcon{color:currentColor;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.articleIconImage{fill:currentColor;width:1rem;height:1rem}.articleViewsText{color:currentColor;font-variant-numeric:tabular-nums;margin:0;padding:0;font-size:.75rem}.articleText{color:var(--color-text-muted);-webkit-line-clamp:5;-webkit-box-orient:vertical;margin:0;padding:0;font-size:.9rem;line-height:1.55;display:-webkit-box;overflow:hidden}.articleDate{color:currentColor;font-size:inherit;margin:0;display:inline}.articleReadingTime{color:var(--color-text-muted);font-size:inherit}.articleMetaSeparator{color:var(--color-border)}.emptyState{text-align:center;color:var(--color-text);margin:4rem 0;font-size:1rem}.siteFooter{text-align:center;margin:3rem var(--page-gutter) 1.25rem;justify-content:center;display:block}.footerHr{text-align:left;width:min(10rem,35%);color:var(--color-border);border:0;border-top:1px solid var(--color-border);height:1px;margin:2rem auto;padding:0;display:block}.footerText{color:var(--color-text-muted);font-size:.8rem;line-height:1.5}.footerIconContainer{justify-content:center;align-items:center;margin-top:1rem;display:flex}.articleFooter{text-align:center;width:min(100% - 2rem,68ch);height:auto;margin:2.5rem auto 0;display:block;position:relative;overflow:hidden}.articleFooterHr{width:3rem;color:var(--color-border);border:0;border-top:1px solid var(--color-border);height:1px;margin:1rem auto;padding:0;display:block}.articleFooterText{color:var(--color-text-muted);font-size:.85rem;line-height:1.5}.articleUnlistedNote{box-sizing:border-box;border:1px solid var(--color-border);background:var(--color-bg-raised);width:min(100% - 2rem,68ch);color:var(--color-text-muted);border-radius:.6rem;margin:1rem auto 0;padding:.75rem 1rem;font-size:.9rem;line-height:1.5}.adminShell{box-sizing:border-box;width:min(100% - 2rem,76rem);margin:0 auto;padding:clamp(3rem,7vw,5rem) 0 4rem}.adminEditorShell{width:min(100% - 2rem,72rem)}.adminHeader{justify-content:space-between;align-items:center;gap:1rem;margin-bottom:1.5rem;display:flex}.adminHeaderActions,.adminEditorActions,.adminPostActions,.adminToolbar{flex-wrap:wrap;align-items:center;gap:.65rem;display:flex}.adminKicker{color:var(--color-accent);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin:0 0 .25rem;font-size:.75rem}.adminTitle{color:var(--color-text);font-family:var(--font-mono);margin:0;font-size:clamp(1.7rem,3vw,2.25rem);line-height:1.1}.adminCard,.adminPostCard,.adminAlert,.adminEmpty{box-sizing:border-box;background:var(--color-bg-raised);box-shadow:var(--shadow-card);border:1px solid #0000;border-radius:.85rem}.adminCard{padding:clamp(1rem,2.5vw,1.5rem)}.adminLoginCard{max-width:28rem}.adminForm,.adminEditorForm{flex-direction:column;gap:1rem;display:flex}.adminEditorMetaGrid{grid-template-columns:minmax(16rem,2fr) minmax(12rem,1.35fr) minmax(9rem,.8fr) minmax(8rem,.7fr);align-items:start;gap:.75rem;display:grid}.adminField{color:var(--color-text-muted);flex-direction:column;gap:.4rem;font-size:.85rem;display:flex}.adminFieldCompact{gap:.3rem}.adminFieldHint{color:var(--color-text-muted);font-size:.76rem;line-height:1.45}.adminInput,.adminTextarea{box-sizing:border-box;border:1px solid var(--color-border);background:var(--color-bg-code);width:100%;color:var(--color-text);font:inherit;border-radius:.55rem;padding:.65rem .75rem}.adminFieldCompact .adminInput{padding:.5rem .65rem}.adminTextarea{resize:vertical;min-height:24rem;font-family:var(--font-mono);font-size:.88rem;line-height:1.55}.adminInput:focus,.adminTextarea:focus{box-shadow:var(--focus-ring);outline:none}@media (width<=58rem){.adminEditorMetaGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=34rem){.adminEditorMetaGrid{grid-template-columns:1fr}}.adminButton{box-sizing:border-box;border:1px solid var(--color-border);background:var(--color-accent);min-height:2.35rem;color:var(--color-bg);font:inherit;font-family:var(--font-mono);cursor:pointer;border-radius:999px;justify-content:center;align-items:center;padding:.55rem .85rem;font-size:.78rem;line-height:1;text-decoration:none;transition:background-color .2s ease-in-out,border-color .2s ease-in-out,box-shadow .2s ease-in-out,color .2s ease-in-out,transform .2s ease-in-out;display:inline-flex}.adminButton:hover,.adminButton:focus-visible{background:var(--color-accent-hover);color:var(--color-bg);text-decoration:none;transform:translateY(-.06rem)}.adminButton:focus-visible{box-shadow:var(--focus-ring);outline:none}.adminButtonSecondary{background:var(--color-bg-raised);color:var(--color-text)}.adminButtonSecondary:hover,.adminButtonSecondary:focus-visible{background:var(--color-bg-raised-hover);color:var(--color-accent-hover)}.adminButtonDanger{color:var(--color-accent);background:0 0}.adminButtonDanger:hover,.adminButtonDanger:focus-visible{background:var(--color-accent-hover);color:var(--color-bg)}.adminAlert,.adminEmpty{color:var(--color-text-muted);margin:0 0 1rem;padding:.85rem 1rem}.adminToolbar{justify-content:flex-end;margin-bottom:1rem}.adminPostList{gap:1rem;display:grid}.adminPostCard{border-left:2px solid var(--color-border);gap:1rem;padding:1rem;display:grid}.adminPostCardHidden{opacity:.78}.adminPostMain{justify-content:space-between;align-items:start;gap:1rem;display:flex}.adminPostTitle{color:var(--color-text);margin:0;font-size:1.15rem;line-height:1.3}.adminPostMeta{color:var(--color-text-muted);margin:.45rem 0 0;font-size:.82rem;line-height:1.5}.adminPostPublicLink{font-family:var(--font-mono);font-size:.78rem}.adminBadge{border:1px solid var(--color-border);width:max-content;color:var(--color-accent);font-family:var(--font-mono);vertical-align:middle;border-radius:999px;align-items:center;margin-left:.4rem;padding:.12rem .45rem;font-size:.68rem;line-height:1.2;display:inline-flex}.adminReadonlyGrid{grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.85rem;padding-bottom:.25rem;display:grid}.adminReadonlyLabel{color:var(--color-text-muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:.25rem;font-size:.75rem;display:block}.adminReadonlyValue{color:var(--color-text);font-size:.9rem}.adminUploadPanel{border:1px solid var(--color-border);background:var(--color-bg-code);border-radius:.75rem;gap:1rem;padding:1rem;display:grid}.adminUploadHeader{justify-content:space-between;align-items:start;gap:1rem;display:flex}.adminUploadTitle{color:var(--color-text);margin:0 0 .35rem;font-size:1rem;line-height:1.3}.adminUploadHint{color:var(--color-text-muted);margin:0;font-size:.82rem;line-height:1.5}.adminUploadPicker{flex:none;position:relative;overflow:hidden}.adminUploadPickerInput,.adminUploadSubmitInput{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.adminUploadList{gap:.85rem;display:grid}.adminUploadItem{border:1px solid var(--color-border);background:var(--color-bg-raised);border-radius:.65rem;grid-template-columns:6rem minmax(0,1fr);align-items:start;gap:.85rem;padding:.75rem;display:grid}.adminUploadPreview{aspect-ratio:1;object-fit:cover;border:1px solid var(--color-border);background:var(--color-bg-code);border-radius:.5rem;width:6rem;display:block}.adminUploadDetails{gap:.65rem;min-width:0;display:grid}.adminUploadFilename{color:var(--color-text);overflow-wrap:anywhere;margin:0;font-size:.9rem;line-height:1.35}.adminUploadPathField{gap:.3rem}.adminUploadActions{flex-wrap:wrap;gap:.5rem;display:flex}@media (width<=48rem){.siteFooter{margin-top:2rem}.adminHeader,.adminPostMain,.adminUploadHeader{flex-direction:column;align-items:stretch}.adminUploadItem{grid-template-columns:1fr}.adminUploadPreview{width:min(100%,14rem)}}@media (width<=30rem){.themeToggle{min-width:2.1rem;padding-inline:.35rem}.themeToggleText{display:none}.title{margin-top:3.25rem}.titleText{font-size:1.7rem}.titleSubtext{font-size:.9rem}.articleTitleAndViews{gap:.75rem}.articleContainer{min-height:auto;padding:1rem}.articleText{-webkit-line-clamp:4}.articleFooterText,.footerText{font-size:.78rem}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
