:root{--devlog-bg:var(
    --background-white-overlay
  );--devlog-text-main:#0b1a3d;--devlog-heading:var(--navy);--devlog-text-sub:#0a1531;--devlog-text-link:#0d2241;--ss-audio-control-bg:#111;--ss-audio-control-hover:#181818;--ss-audio-bg:#1c1c1c;--ss-audio-text:#f5f5f5;--ss-audio-title:#f7f7f7;--ss-audio-artist:#b6b6b6;--ss-audio-time:#f0f0f0;--ss-audio-progress:linear-gradient(90deg,#00c1ff,#a2e9ff);--devlog-code-text:#e8e8e8;--devlog-border:rgb(11 24 50/30%);--devlog-h1-size:clamp(3rem,4vw,3.75rem);--devlog-h1-weight:700;--devlog-h1-line:1.2;--devlog-h2-size:1.4rem;--devlog-h2-weight:700;--devlog-body-size:1rem;--devlog-compact-pt:0.2rem;--devlog-compact-pb:0rem;--devlog-divider:rgb(0 0 0/30%);--devlog-compact-hr-gap:2rem;--devlog-post-title-size:0.6rem;--devlog-post-title-weight:800;--devlog-post-body-size:0.5rem;--devlog-post-body-weight:500;--devlog-header-month-size:clamp(1.15rem,2vw,1.6rem);--devlog-header-month-weight:700;--devlog-header-tagline-size:clamp(1rem,1.8vw,1.35rem);--devlog-header-tagline-weight:600;--devlog-content-max:var(--container-wide);--devlog-post-max:1350px}:root[data-theme=dark]{--devlog-text-main:#fff;--devlog-heading:#fff;--devlog-text-sub:#f0f0f0;--devlog-text-link:var(--pal-ice);--devlog-border:rgb(255 255 255/30%);--devlog-divider:rgb(255 255 255/35%)}@media (prefers-color-scheme:dark){:root:not([data-theme]){--devlog-text-main:#fff;--devlog-heading:#fff;--devlog-text-sub:#f0f0f0;--devlog-text-link:var(--pal-ice);--devlog-border:rgb(255 255 255/30%);--devlog-divider:rgb(255 255 255/35%)}}.devlog-page{background-color:var(--devlog-bg);background-image:none;padding:3rem 1.25rem 2rem;color:var(--devlog-text-main);width:100%}.devlog-page__content{max-width:var(--devlog-content-max);margin:0 auto;width:100%}.devlog-page__content h1{margin:0 0 1.75rem;text-align:center;font-family:var(--font-montserrat);font-weight:var(--devlog-h1-weight);font-size:var(--devlog-h1-size);line-height:var(--devlog-h1-line);letter-spacing:.01em;color:var(--devlog-heading)}.devlog-section{margin-bottom:2rem}.devlog-section h2{margin-top:0;font-size:var(--devlog-h2-size);font-weight:var(--devlog-h2-weight);color:var(--devlog-text-sub);margin-bottom:.85rem}.devlog-section p{margin:0 0 .8rem;font-size:var(--devlog-body-size);color:var(--devlog-text-main);line-height:1.7}.devlog-section p+p{margin-top:1.25rem}.devlog-bullets{margin:0;padding-left:1.25rem;list-style:disc;display:flex;flex-direction:column;gap:.35rem}.devlog-bullets li{color:var(--devlog-text-sub);line-height:1.6;font-size:1rem}.devlog-link,.devlog-section a{color:var(--devlog-text-link);font-weight:700;text-decoration:underline}.devlog-section table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.9rem}.devlog-section td,.devlog-section th{padding:.5rem .75rem;border:1px solid var(--line-soft,rgb(0 0 0/22%));text-align:left}.devlog-section th{background:rgb(0 0 0/5%);font-weight:700}.devlog-section code{background:rgb(0 0 0/6%);padding:.15em .35em;border-radius:4px;font-size:.88em}.devlog-section pre{background:var(--navy);color:var(--devlog-code-text);padding:1rem 1.25rem;border-radius:8px;overflow-x:auto;font-size:.85rem;line-height:1.6;margin:1rem 0}.devlog-section pre code{background:none;padding:0;border-radius:0;font-size:inherit;color:inherit}.devlog-index{text-align:center}.devlog-index__list{display:flex;flex-direction:column;gap:1.5rem;align-items:center;margin-top:2rem}.devlog-index__entry{text-align:center}.devlog-index__controls{display:flex;flex-direction:column;gap:.75rem;align-items:center;margin:1.5rem 0 2rem}.devlog-toggle{display:flex;flex-wrap:wrap;align-items:center;gap:.6rem;justify-content:center}.devlog-toggle__label{font-size:.75rem;text-transform:uppercase;letter-spacing:.2em;font-weight:700;color:var(--devlog-text-sub)}.devlog-toggle__group{display:inline-flex;flex-wrap:wrap;gap:.5rem;justify-content:center}.devlog-toggle__option{padding:.7rem 1rem;border-radius:999px;border:1px solid var(--devlog-border);color:var(--devlog-text-link);text-decoration:none;font-weight:700;font-size:.9rem;background:transparent;transition:background .2s ease,border-color .2s ease,color .2s ease}.devlog-toggle__option:hover{border-color:rgb(11 24 50/45%)}.devlog-toggle__option--active{background:rgb(11 24 50/10%);border-color:rgb(11 24 50/45%);color:var(--devlog-heading)}.devlog-card{width:min(560px,100%);padding:1.1rem 1.25rem;border-radius:12px;border:1px solid var(--devlog-border);background:rgb(255 255 255/35%);display:flex;flex-direction:column;gap:.35rem}:root[data-theme=dark] .devlog-card{background:rgb(255 255 255/8%)}.devlog-reader{display:flex;flex-direction:column;gap:2.5rem}.devlog-reader-layout{display:grid;grid-template-columns:minmax(160px,220px) minmax(0,1fr);gap:1.75rem;align-items:start}.devlog-reader-sidebar{position:sticky;top:1.25rem;align-self:start;padding:1rem;border:1px solid var(--devlog-border);border-radius:12px;background:rgb(255 255 255/35%)}:root[data-theme=dark] .devlog-reader-sidebar{background:rgb(255 255 255/8%)}.devlog-reader-sidebar__title{margin:0 0 .75rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.2em;font-weight:700;color:var(--devlog-text-sub)}.devlog-reader-sidebar__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.devlog-reader-sidebar__link{color:var(--devlog-text-link);font-weight:700;font-size:.9rem;background:transparent;border:0;padding:0;cursor:pointer}.devlog-reader-sidebar__link:hover{text-decoration:underline}.devlog-reader-sidebar__link--active{color:var(--text-heavy);font-weight:900;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:.3em}.devlog-reader__month{scroll-margin-top:5rem}.devlog-reader__month-header{display:flex;flex-direction:column;gap:.6rem;align-items:center;text-align:center;margin-bottom:1.5rem}.devlog-reader__month-meta{display:flex;flex-direction:column;gap:.35rem}.devlog-reader__month-title{margin:0;font-size:var(--devlog-header-month-size);font-weight:800;color:var(--devlog-heading)}.devlog-reader__month-tagline{margin:0;font-size:1rem;font-weight:600;color:var(--devlog-text-main)}.devlog-reader__month-link{font-weight:700;font-size:.9rem;color:var(--devlog-text-link);text-decoration:underline}.devlog-header{margin-bottom:2rem;background:transparent;border:0;padding:0}.devlog-breadcrumb{display:flex;align-items:center;gap:.35rem;font-size:.85rem;letter-spacing:.2em;text-transform:uppercase;color:var(--devlog-text-link);margin-bottom:.6rem;justify-content:center}.devlog-breadcrumb__link{color:var(--devlog-text-link);font-weight:700;text-decoration:underline}.devlog-breadcrumb__separator{color:rgb(11 24 50/35%)}.devlog-breadcrumb__current{font-weight:700;color:var(--devlog-heading)}.devlog-header-meta{margin-top:1rem;display:flex;flex-direction:column;gap:.15rem}.devlog-header-month{font-size:var(--devlog-header-month-size);font-weight:var(--devlog-header-month-weight);margin:0;color:var(--devlog-heading)}.devlog-header-tagline{font-size:var(--devlog-header-tagline-size);font-weight:var(--devlog-header-tagline-weight);margin:0;color:var(--devlog-heading)}.devlog-header-divider{margin:1.5rem 0;border:0;border-top:1px solid var(--devlog-divider)}.devlog-toc{margin-bottom:1.5rem;padding:.75rem 1rem;border:1px solid var(--devlog-border);border-radius:8px;background:rgb(255 255 255/25%)}:root[data-theme=dark] .devlog-toc{background:rgb(255 255 255/6%)}@media (prefers-color-scheme:dark){:root:not([data-theme]) .devlog-toc{background:rgb(255 255 255/6%)}}.devlog-toc__title{margin:0 0 .4rem;font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;font-weight:700;color:var(--devlog-text-sub)}.devlog-toc__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.25rem .75rem}.devlog-toc__link{color:var(--devlog-text-link);font-size:.85rem;font-weight:600;text-decoration:none}.devlog-toc__link:hover{text-decoration:underline}.devlog-divider{margin:1.5rem 0 .5rem;border:0;border-top:1px solid rgb(11 24 50/25%)}@media (width >= 768px){.devlog-header-meta{flex-direction:row;align-items:baseline;justify-content:space-between;gap:.5rem}.devlog-header-tagline{text-align:right}.devlog-index__controls{flex-direction:row;justify-content:center}.devlog-reader__month-header{flex-direction:row;align-items:flex-end;justify-content:space-between;text-align:left}}@media (width <= 900px){.devlog-reader-layout{grid-template-columns:1fr}.devlog-reader-sidebar{position:static;width:100%;padding:.75rem;border-radius:10px}.devlog-reader-sidebar__title{display:none}.devlog-reader-sidebar__list{flex-flow:row nowrap;gap:.6rem;overflow-x:auto;padding-bottom:.25rem;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}.devlog-reader-sidebar__list li{scroll-snap-align:start;flex:0 0 auto}.devlog-reader-sidebar__link{padding:.75rem .85rem;border-radius:999px;border:1px solid var(--devlog-border);background:rgb(255 255 255/50%);white-space:nowrap;font-size:.85rem}:root[data-theme=dark] .devlog-reader-sidebar__link{background:rgb(255 255 255/12%)}}@media (width <= 640px){.devlog-page{padding:2.25rem .9rem 2.75rem}.devlog-reader{gap:2rem}.devlog-reader__month-header{align-items:flex-start;text-align:left}}@media (width >= 901px){.devlog-reader-layout{grid-template-columns:1fr;padding-left:260px}.devlog-reader-sidebar{position:fixed;top:15rem;left:max(.5rem,calc((100vw - var(--devlog-content-max)) / 2) - 3rem);width:220px;max-height:calc(100vh - 9rem);overflow-y:auto}}.devlog-posts{text-align:left;padding-bottom:1.5rem}.devlog-posts--compact h1,.devlog-posts--compact h2,.devlog-posts--compact h3{margin-top:0;margin-bottom:.2rem}.devlog-posts--compact li,.devlog-posts--compact p{margin-top:0;margin-bottom:.28rem}.devlog-posts--compact figure{margin:.2rem 0 .45rem}.devlog-posts--compact>*{padding-top:var(--devlog-compact-pt);padding-bottom:var(--devlog-compact-pb)}.devlog-posts--compact hr{margin:var(--devlog-compact-hr-gap) 0;border:0;border-top:1px solid var(--devlog-divider)}.devlog-posts--spaced-headings h2,.devlog-posts--spaced-headings h3{margin-top:1.2rem}.devlog-posts h1{text-align:center;margin-bottom:0;font-weight:800}.devlog-posts h2{font-size:1.15rem;font-weight:800}.devlog-posts h3{font-size:1.05rem;font-weight:900}.devlog-posts li,.devlog-posts p{font-size:.95rem;line-height:1.65;font-weight:var(--devlog-post-body-weight);margin-bottom:.9em}.devlog-posts a{color:var(--devlog-text-link);text-decoration:underline;text-decoration-thickness:1.75px;font-weight:var(--devlog-post-body-weight)}.devlog-posts b,.devlog-posts strong{font-weight:900;color:var(--text-heavy);letter-spacing:.01em}.devlog-posts a:hover{color:var(--devlog-text-main)}.devlog-meta{display:flex;justify-content:space-between;width:100%;margin-top:.15rem;align-items:flex-end}.devlog-month-subtitle,.devlog-month-title{margin:0;text-align:center}.devlog-post{max-width:var(--devlog-post-max);margin-left:auto;margin-right:auto;margin-top:4rem;padding-bottom:2rem;border-bottom:1px solid var(--devlog-border)}.devlog-image-grid{display:flex;flex-wrap:nowrap;justify-content:flex-start;align-items:center;gap:.35rem;overflow-x:auto;padding-bottom:1.25rem;scrollbar-width:none;-ms-overflow-style:none}.devlog-image-grid--media{padding-bottom:1rem;gap:clamp(.25rem,1vw,.5rem);flex-wrap:wrap;justify-content:center}.devlog-image-grid--row{flex-wrap:wrap;justify-content:space-between;align-items:center}.devlog-image-grid--row .devlog-image{flex:1 1 calc(33.333% - 0.45rem);min-width:220px;max-width:none}.devlog-image-grid--row .devlog-image img{height:100%}.devlog-logo-grid{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1rem;justify-content:center}.devlog-logo-card{flex:1 1 140px;min-width:140px;max-width:180px;padding:.5rem;border-radius:.35rem;background:rgb(255 255 255/5%);border:1px solid rgb(255 255 255/20%);display:flex;align-items:center;justify-content:center;box-shadow:0 6px 12px rgb(0 0 0/10%)}.devlog-logo-card a,.devlog-logo-card__btn{width:100%;display:block;background:none;border:0;padding:0;cursor:pointer}.devlog-logo-card img{width:100%;aspect-ratio:1;object-fit:contain}.lightbox-overlay{position:fixed;inset:0;z-index:9999;background:rgb(0 0 0/85%);display:flex;align-items:center;justify-content:center;animation:lightbox-fade-in .2s ease}@keyframes lightbox-fade-in{0%{opacity:0}to{opacity:1}}.lightbox-content{position:relative;display:flex;align-items:center;justify-content:center;width:min(85vw,720px);height:min(80vh,720px)}.lightbox-image{width:100%;height:100%;object-fit:contain;border-radius:6px;user-select:none}.lightbox-close{position:absolute;top:-2.5rem;right:-.5rem;background:none;border:0;color:#fff;font-size:2.25rem;cursor:pointer;line-height:1;padding:.25rem .5rem;opacity:.8;transition:opacity .15s}.lightbox-close:hover{opacity:1}.lightbox-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgb(0 0 0/45%);border:0;color:#fff;font-size:2.5rem;cursor:pointer;padding:.25rem .75rem;border-radius:6px;line-height:1;opacity:.7;transition:opacity .15s}.lightbox-nav:hover{opacity:1}.lightbox-nav--prev{left:-3.5rem}.lightbox-nav--next{right:-3.5rem}.lightbox-counter{position:absolute;bottom:-2rem;left:50%;transform:translateX(-50%);color:rgb(255 255 255/70%);font-size:.85rem;font-weight:600;white-space:nowrap}@media (width <= 640px){.lightbox-nav--prev{left:.25rem}.lightbox-nav--next{right:.25rem}.lightbox-close{top:-2rem;right:0}}.devlog-image-grid--media .devlog-image{flex:1 1 260px;min-width:240px;max-width:420px;padding-bottom:.25rem}.devlog-image-grid::-webkit-scrollbar{width:0;height:0}.devlog-image{flex:1 1 30%;min-width:0;max-width:360px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:clamp(.2rem,1vw,.45rem);position:relative;overflow:visible;padding-bottom:.95rem}.devlog-image img{height:clamp(180px,28vw,280px);border-radius:.35rem}.devlog-image img,.devlog-image video{width:100%;object-fit:contain;display:block}.devlog-image video{height:clamp(100px,18vw,180px);background:#000}.devlog-image iframe{width:100%;height:clamp(120px,22vw,220px);border:0;display:block}.devlog-image--wide{max-width:none}.devlog-video{aspect-ratio:16/9;height:auto}.discord-widget,.discord-widget img{display:block;width:100%}.discord-widget img{height:auto;object-fit:contain}.devlog-image figcaption{font-weight:700;font-size:.95rem;text-align:center;color:var(--devlog-text-sub);margin-top:.35rem;display:block;width:100%;align-self:center}.ss-audio{display:grid;grid-template-columns:auto 1fr auto;align-items:center;background:var(--ss-audio-bg);color:var(--ss-audio-text);border-radius:6px;overflow:hidden;height:80px;box-shadow:0 6px 18px rgb(0 0 0/18%);max-width:100%;flex:none;cursor:pointer;margin-top:auto;margin-bottom:0}.ss-audio,.ss-audio-figure{position:relative;width:100%;min-width:0}.ss-audio-figure{flex:1 1 30%;max-width:360px;display:flex;flex-direction:column;align-items:flex-start;justify-content:flex-start;gap:.35rem;padding-bottom:.2rem}.ss-audio__caption{font-weight:800;font-size:.95rem;text-align:center;width:100%;color:var(--devlog-text-sub)}.ss-audio__control{width:68px;height:100%;background:var(--ss-audio-control-bg);border:0;display:grid;place-items:center;cursor:pointer;transition:background .2s ease;color:inherit}.ss-audio__control:hover{background:var(--ss-audio-control-hover)}.ss-audio__control:disabled{opacity:.35;cursor:not-allowed}.ss-audio__icon{display:inline-block;width:18px;height:18px;background:transparent}.ss-audio__icon--play{clip-path:polygon(0 0,100% 50%,0 100%);background:var(--ss-audio-text)}.ss-audio__icon--pause{width:14px;display:grid;grid-template-columns:1fr 1fr;gap:4px}.ss-audio__icon--pause:after,.ss-audio__icon--pause:before{content:"";display:block;width:100%;height:18px;background:var(--ss-audio-text)}.ss-audio__meta{padding:.45rem 1rem;display:flex;flex-direction:column;gap:.2rem;min-width:0;overflow:hidden}.ss-audio__title{font-weight:800;font-size:clamp(.82rem,2vw,1rem);color:var(--ss-audio-title);white-space:normal;overflow:hidden;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow-wrap:break-word}.ss-audio__artist,.ss-audio__title{line-height:1.2;text-overflow:ellipsis;margin:0}.ss-audio__artist{font-size:clamp(.78rem,2vw,.95rem);color:var(--ss-audio-artist)}.ss-audio__artist,.ss-audio__time{white-space:nowrap;overflow:hidden}.ss-audio__time{padding:.45rem 1rem;font-weight:700;font-size:clamp(.82rem,2vw,.98rem);color:var(--ss-audio-time);text-overflow:ellipsis;min-width:0;text-align:right}.ss-audio__progress{position:absolute;left:0;right:0;bottom:0;height:14px;background:rgb(255 255 255/8%);overflow:visible;display:flex;align-items:center;pointer-events:all}.ss-audio__progress-bar{display:block;height:4px;background:var(--ss-audio-progress);transition:width .15s linear;border-radius:999px}.ss-audio__scrub-handle{position:absolute;top:50%;bottom:auto;width:18px;margin-left:-9px;transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center}.ss-audio__scrub-dot{width:10px;height:10px;border-radius:999px;background:var(--ss-audio-text);box-shadow:0 0 0 3px rgb(255 255 255/15%)}.ss-audio__native{margin-top:.25rem}.ss-audio__native--hidden{display:none}.devlog-placeholder{width:100%;height:120px;border-radius:12px;background:linear-gradient(135deg,rgb(255 255 255/20%),rgb(11 24 50/20%));border:1px solid rgb(11 24 50/20%)}.ss-video{flex:1 1 30%;min-width:0;max-width:360px;background:transparent;border:0;border-radius:0;overflow:visible;color:var(--devlog-text-sub);box-shadow:none;display:flex;flex-direction:column;gap:.35rem}.ss-video__media{width:100%;background:transparent;position:relative;overflow:hidden}.ss-video__element{width:100%;height:clamp(140px,22vw,220px);display:block;background:transparent;border:0;object-fit:cover}.ss-video__figcaption{padding:.35rem 0 0;font-size:.95rem;color:var(--devlog-text-sub);width:100%}.ss-video__figcaption--center{text-align:center}@media (width <= 768px){.devlog-page{padding:2.5rem 1rem 3.5rem}}@media (prefers-reduced-motion:reduce){.lightbox-overlay{animation:none}}