:root{--bg-desktop:#0b0b0e;--bg-window:#171719;--border:#1e1a1a;--text:#eaeaea;--accent:#fff;--shadow:#00000040;--crt-line-gap:2px;--crt-blur:.4px;--crt-contrast:.95;--crt-brightness:1;--crt-saturate:1;--crt-vignette-strength:.18;--screen-bezel-color:#161212;--screen-bezel-thickness:10px;--screen-bezel-radius:14px;--bg-vignette-strength:1;--bg-grain-opacity:.1;--matrix-bg-color:#000}:root.dark-mode{--bg-desktop:#0b0b0e;--bg-window:#171719;--border:#e0e0e0;--text:#fff;--accent:#fff;--shadow:#ffffff1f;--crt-line-gap:2px;--crt-blur:.4px;--crt-contrast:1.05;--crt-brightness:1.1;--crt-saturate:1;--crt-vignette-strength:.16;--screen-bezel-color:#1e1a1a;--bg-vignette-strength:.6;--bg-grain-opacity:.01;--matrix-bg-color:#000}*{box-sizing:border-box}html,body{height:100%}html{overflow:hidden;-moz-text-size-adjust:100%!important;text-size-adjust:100%!important;zoom:1!important}body{color:var(--text);overscroll-behavior:none;touch-action:none;background:#000;margin:0;font-family:Silkscreen,VT323,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial;overflow:hidden;-moz-text-size-adjust:100%!important;text-size-adjust:100%!important;zoom:1!important}body:before,body:after{content:"";pointer-events:none;z-index:0;position:fixed;inset:0}.crt .content{background:0 0}.crt{isolation:isolate;border-radius:16px;position:fixed;inset:0;overflow:hidden;box-shadow:0 8px 30px #0006;zoom:1!important}.crt>.matrix-bg-canvas{z-index:0}.crt .content{z-index:1;height:100%;filter:contrast(var(--crt-contrast))brightness(var(--crt-brightness))saturate(var(--crt-saturate))blur(var(--crt-blur));position:relative;transform:translateZ(0)}.crt:before{display:none}.crt:after{content:"";pointer-events:none;background:radial-gradient(ellipse at center,#0000 50%,rgba(0,0,0,var(--crt-vignette-strength))100%),linear-gradient(-15deg,#ffffff14,#fff0 25%,#fff0 75%,#ffffff0f);mix-blend-mode:multiply;position:absolute;inset:0}@keyframes crt-flicker{0%,to{opacity:.95}10%{opacity:.9}20%{opacity:.96}30%{opacity:.92}40%{opacity:.98}50%{opacity:.9}60%{opacity:.97}70%{opacity:.93}80%{opacity:.99}90%{opacity:.91}}.crt.crt-off .content{filter:none}.crt.crt-off:before,.crt.crt-off:after{display:none}.menubar{background:var(--bg-window);border-bottom:2px solid var(--border);-webkit-user-select:none;user-select:none;z-index:2000;will-change:auto;justify-content:space-between;align-items:center;height:28px;padding:0 8px;display:flex;position:fixed;top:0;left:0;right:0}.embedded-screen .menubar{z-index:2000!important;position:fixed!important;top:0!important;left:0!important;right:0!important}.menu{margin-right:12px;display:inline-block;position:relative}.menu-trigger{appearance:none;cursor:inherit;font:inherit;color:inherit;background:0 0;border:none;padding:2px 6px}.menu-dropdown{background:var(--bg-window);border:2px solid var(--border);min-width:220px;box-shadow:0 4px 12px var(--shadow);z-index:3000;display:none;position:absolute;top:100%;left:0}.menu.is-open .menu-dropdown{display:block}.menu-entry{text-align:left;width:100%;cursor:inherit;font:inherit;color:inherit;background:0 0;border:none;padding:6px 8px}.menu[data-id=go] .menu-dropdown{min-width:220px}.menu[data-id=go] .menu-dropdown .menu-entry{border-top:1px solid var(--border);padding:8px 10px;display:block}.menu[data-id=go] .menu-dropdown .menu-entry:first-child{border-top:none}.menu[data-id=edit] .menu-dropdown{min-width:220px}.menu[data-id=edit] .menu-dropdown .menu-entry{border-top:1px solid var(--border);padding:8px 10px;display:block}.menu[data-id=edit] .menu-dropdown .menu-entry:first-child{border-top:none}.mobile .menu[data-id=go] .menu-dropdown .menu-entry,.mobile .menu[data-id=edit] .menu-dropdown .menu-entry{padding:12px 14px}.menu-entry:hover,.menu-entry:focus{background:#c4b8a8}.menu-label{padding:6px 8px;font-weight:700}:root.dark-mode .menu-entry:hover,:root.dark-mode .menu-entry:focus{background:#3d3d3d}:root.dark-mode .is-selected{outline:2px dashed var(--border);outline-offset:2px;background:#ffffff14}:root.dark-mode body,:root.dark-mode .menu-trigger,:root.dark-mode .menu-entry,:root.dark-mode .desktop-icon,:root.dark-mode .window-body,:root.dark-mode pre,:root.dark-mode ul,:root.dark-mode li,:root.dark-mode p,:root.dark-mode .menu-user,:root.dark-mode .menu-label{color:#fff!important}:root:not(.dark-mode) .btn-close,:root.dark-mode .titlebar,:root.dark-mode .btn-close{color:#101010}.menubar-right{align-items:center;gap:10px;display:flex}.menu-user{margin-right:4px}.desktop{touch-action:none;padding:16px;position:fixed;inset:28px 0 0;overflow:hidden}.desktop-icon{appearance:none;text-align:center;width:96px;color:var(--text);-webkit-user-select:none;user-select:none;cursor:inherit;z-index:1;background:0 0;border:none;padding:8px 4px;position:absolute}.desktop-icon.dragging{z-index:10000;will-change:transform,opacity;-moz-user-select:none;backface-visibility:hidden;transform:translateZ(0);opacity:.7!important}.desktop-icon .icon{pointer-events:none;width:48px;height:48px;margin:0 auto 6px;display:block;position:relative}.desktop-icon .icon-label{color:var(--text);font-family:Lucida Console,Lucida Sans Typewriter,Courier New,monospace;font-size:13px;font-weight:550;line-height:1.2}:root:not(.dark-mode) .desktop-icon .icon-label{color:#101010}:root.dark-mode .desktop-icon .icon-label{color:#fff}.is-selected{outline:2px dashed var(--border);outline-offset:2px;background:#0000000d}.marquee{border:2px dashed var(--border);pointer-events:none;z-index:9998;background:#00000014;position:absolute}.window{background:var(--bg-window);border:2px solid var(--border);width:420px;min-width:200px;height:400px;min-height:150px;box-shadow:0 6px 18px var(--shadow);flex-direction:column;display:flex;position:absolute;top:80px;left:80px}.blog-window{width:420px;height:350px}.falling-sand-window{width:500px;min-width:400px;height:400px;min-height:300px}.falling-sand-window .window-body{padding:0;overflow:hidden}.window-resize-handle{z-index:10;background:0 0;position:absolute}.window-resize-handle.nw{cursor:nw-resize;width:12px;height:12px;top:0;left:0}.window-resize-handle.ne{cursor:ne-resize;width:12px;height:12px;top:0;right:0}.window-resize-handle.sw{cursor:sw-resize;width:12px;height:12px;bottom:0;left:0}.window-resize-handle.se{cursor:se-resize;width:12px;height:12px;bottom:0;right:0}.window-resize-handle.n{cursor:n-resize;height:4px;top:0;left:12px;right:12px}.window-resize-handle.s{cursor:s-resize;height:4px;bottom:0;left:12px;right:12px}.window-resize-handle.w{cursor:w-resize;width:4px;top:12px;bottom:12px;left:0}.window-resize-handle.e{cursor:e-resize;width:4px;top:12px;bottom:12px;right:0}.window[hidden]{display:none!important}.titlebar{border-bottom:2px solid var(--border);cursor:inherit;-webkit-user-select:none;user-select:none;background:repeating-linear-gradient(90deg,#f6f1e7 0 10px,#efe9dc 10px 20px);flex-shrink:0;justify-content:space-between;align-items:center;padding:6px 8px;display:flex}.titlebar .title{color:#101010}.btn-close{appearance:none;background:var(--accent);color:#fff;border:1px solid var(--border);text-align:center;width:20px;height:20px;cursor:inherit;padding:0;line-height:18px}.window-body{box-sizing:border-box;touch-action:pan-y pan-x;-webkit-overflow-scrolling:touch;-webkit-user-select:text;user-select:text;-webkit-tap-highlight-color:transparent;flex:1;min-height:0;padding:10px;overflow:auto;zoom:1!important}.window-body textarea:focus,.window-body input[type=text]:focus,.window-body input[type=textarea]:focus,:root.dark-mode .window-body textarea:focus,:root.dark-mode .window-body input[type=text]:focus,:root.dark-mode .window-body input[type=textarea]:focus{box-shadow:none!important;outline:none!important}.blog-window:not(.blog-post-window) .window-body{touch-action:auto;-webkit-overflow-scrolling:touch;flex-direction:column;min-height:0;padding:0;display:flex;overflow:auto}.blog-post-window .window-body{touch-action:pan-y pan-x;-webkit-overflow-scrolling:touch;-webkit-user-select:text;user-select:text;-webkit-tap-highlight-color:transparent;flex:1;min-height:0;padding:12px;overflow:auto;zoom:1!important}.window-body>.r3f-wrap{width:100%;height:420px}.embedded-screen{--crt-bulge:0;--crt-aspect:1;--crt-bright-gloss:.4;--crt-dark-edge:.15;border-radius:var(--screen-bezel-radius);width:100%;height:100%;box-shadow:0 0 0 var(--screen-bezel-thickness)var(--screen-bezel-color);background:#fff;position:relative;overflow:hidden;transform:translateZ(0);zoom:1!important}@media (pointer:coarse){.embedded-screen .menubar{z-index:2000!important;will-change:auto!important;width:100vw!important;max-width:100vw!important;position:fixed!important;top:0!important;left:0!important;right:0!important;transform:none!important}}.pm-editor .ProseMirror{-webkit-user-select:text;user-select:text;caret-color:auto;touch-action:pan-x pan-y;-webkit-touch-callout:none;-webkit-tap-highlight-color:transparent;background:0 0;border:none;outline:none;min-height:180px;padding:12px 16px;font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:14px;font-weight:500;line-height:1.6;zoom:1!important}.pm-editor .ProseMirror:focus,:root.dark-mode .pm-editor .ProseMirror:focus{box-shadow:none!important;outline:none!important}.pm-editor{touch-action:pan-x pan-y;zoom:1!important}.pm-editor .ProseMirror[vim-active=true][mode=normal]{caret-color:#0000}.pm-editor .ProseMirror[vim-active=true][mode=normal] .vim-cursor{background:var(--accent);color:#101010;border-radius:2px;animation:1s step-end infinite vim-blink}.pm-editor .ProseMirror[vim-active=true][mode=normal] .vim-cursor-widget{background:var(--accent);vertical-align:baseline;border-radius:2px;width:.6ch;height:1em;animation:1s step-end infinite vim-blink;display:inline-block}@keyframes vim-blink{0%{opacity:1}50%{opacity:.15}to{opacity:1}}.pm-editor .ProseMirror p{margin:0 0 12px}.pm-editor .ProseMirror ul[data-type=taskList]{margin:0 0 12px;padding-left:0;list-style:none}.pm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem]{align-items:flex-start;gap:10px;margin-bottom:8px;padding-left:0;display:flex}.pm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem] label{cursor:pointer;flex-shrink:0;margin-top:2px;display:block}.pm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem] label input[type=checkbox]{cursor:pointer;appearance:none;border:3px solid var(--border);background:var(--bg-window);width:18px;height:18px;image-rendering:pixelated;flex-shrink:0;margin:0;display:block;position:relative;box-shadow:inset 1px 1px 2px #0003}.pm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem] label input[type=checkbox]:checked{background:var(--accent);border-color:var(--accent);box-shadow:inset 1px 1px 2px #0000001a,0 0 0 1px var(--border)}.pm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem] label input[type=checkbox]:checked:before{content:"";width:6px;height:10px;image-rendering:pixelated;border:3px solid #101010;border-width:0 3px 3px 0;position:absolute;top:0;left:3px;transform:rotate(45deg)}:root.dark-mode .pm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem] label input[type=checkbox]:checked:before{border-color:#101010}.pm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem] label span{display:none}.pm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem] p{word-wrap:break-word;overflow-wrap:break-word;flex:1;min-width:0;margin:0}.pm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem][data-checked=true] p{opacity:.6!important;text-decoration:line-through!important}.pm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem]:has(input[type=checkbox]:checked) p{opacity:.6!important;text-decoration:line-through!important}.pm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem][data-checked=true] p *{text-decoration:line-through!important}.pm-editor .ProseMirror ul[data-type=taskList] li[data-type=taskItem]:has(input[type=checkbox]:checked) p *{text-decoration:line-through!important}.pm-editor .cm-editor{border:1px dashed var(--border);background:0 0;min-height:180px;font-family:Courier New,Courier,Lucida Console,Lucida Sans Typewriter,monospace}.pm-editor .cm-content{-webkit-user-select:text;user-select:text;padding:8px;font-family:Courier New,Courier,Lucida Console,Lucida Sans Typewriter,monospace}.pm-editor .cm-editor{backface-visibility:hidden;will-change:transform;transform-style:preserve-3d;top:0;transform:translateZ(0)}.pm-editor .cm-editor:focus,.pm-editor .cm-editor:focus-within,:root.dark-mode .pm-editor .cm-editor:focus,:root.dark-mode .pm-editor .cm-editor:focus-within{box-shadow:none!important;outline:none!important}.cm-fat-cursor .cm-cursor{display:none!important}.embedded-screen{--text:#101010}:root.dark-mode .embedded-screen{--text:#fff}.embedded-screen{-moz-text-size-adjust:100%;text-size-adjust:100%}.html-screen-wrapper{will-change:transform;transform-style:preserve-3d!important;-webkit-transform-style:preserve-3d!important;backface-visibility:hidden!important;transform:translate(0,0)!important}.embedded-screen{cursor:url(/cursor-light.svg) 1 1,auto;position:relative}:root.dark-mode .embedded-screen{cursor:url(/cursor-dark.svg) 1 1,auto}.embedded-screen:before{content:"";pointer-events:none;background:repeating-linear-gradient(to bottom,#0000001f 0px,#0000001f 1px,#0000 1px,#0000 var(--crt-line-gap));mix-blend-mode:multiply;position:absolute;inset:0}.embedded-screen:after{display:none}:root.dark-mode .embedded-screen{background:#0a0a0a}.crt-curvature-overlay,.crt-curvature-gloss{display:none}.embedded-cursor{pointer-events:none;width:17px;height:17px;image-rendering:pixelated;z-index:10000;will-change:transform;background:url(/retro-cursor-light.svg) 0 0/17px 17px no-repeat;position:absolute;top:0;left:0;transform:translate(-1px,-1px)}:root.dark-mode .embedded-cursor{background-image:url(/retro-cursor-dark.svg)}.embedded-cursor-global{pointer-events:none;width:17px;height:17px;image-rendering:pixelated;z-index:100000;will-change:transform;background:url(/retro-cursor-light.svg) 0 0/17px 17px no-repeat;display:none;position:fixed;top:0;left:0}:root.dark-mode .embedded-cursor-global{background-image:url(/retro-cursor-dark.svg)}html,body,#__next{height:100%}.r3f-wrap{width:100%;height:100dvh}.calculator-window{width:160px!important;min-width:160px!important;height:220px!important;min-height:220px!important}.calculator-window .window-body{justify-content:center;align-items:flex-start;padding:6px;display:flex}.calc{box-sizing:border-box;width:140px;margin:0 auto}.calc-display{border:2px solid var(--border);text-align:right;min-height:18px;image-rendering:pixelated;letter-spacing:0;box-sizing:border-box;text-overflow:ellipsis;margin-bottom:4px;padding:3px 5px;font-family:Silkscreen,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;font-weight:400;line-height:1.2;overflow:hidden;color:#000!important;background:#fff!important}:root.dark-mode .calc-display{border-color:#000;color:#000!important;background:#fff!important}.calc-keys{box-sizing:border-box;grid-template-columns:repeat(4,1fr);gap:3px;display:grid}.key{border:2px solid var(--border);cursor:inherit;image-rendering:pixelated;box-sizing:border-box;min-height:20px;padding:3px 2px;font-family:Silkscreen,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:11px;font-weight:400;line-height:1.2;color:#000!important;background:#fff!important}:root.dark-mode .key{border-color:#000;color:#000!important;background:#fff!important}.key:hover,:root.dark-mode .key:hover{background:#f0f0f0!important}.key:active,:root.dark-mode .key:active{border-color:#000;background:#e0e0e0!important}.key.wide{grid-column:span 2}.key.tall{grid-row:span 2}.falling-sand-container{box-sizing:border-box;gap:12px;width:100%;height:100%;min-height:0;padding:8px;display:flex}.falling-sand-game{border:2px solid var(--border);background:#000;flex:1;min-width:0;min-height:0;position:relative;overflow:hidden}.falling-sand-canvas{width:100%;height:100%;image-rendering:pixelated;cursor:crosshair;touch-action:none;display:block;position:absolute;top:0;left:0}.falling-sand-shader{width:100%;height:100%;image-rendering:pixelated;pointer-events:none;filter:contrast(1.1)brightness(.95);display:block;position:absolute;top:0;left:0}.falling-sand-hud{background:var(--bg-window);border:2px solid var(--border);flex-direction:column;flex-shrink:0;gap:6px;width:180px;padding:8px;display:flex;overflow-y:auto}:root:not(.dark-mode) .falling-sand-hud{background:#171719;border-color:#1e1a1a}.falling-sand-hud h3{color:#fff;text-align:center;border-bottom:2px solid var(--border);margin:0 0 8px;padding-bottom:8px;font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:14px;font-weight:700}:root:not(.dark-mode) .falling-sand-hud h3{color:#fff;border-color:#1e1a1a}.hud-section{flex-direction:column;gap:4px;display:flex}.hud-label{color:#fff;text-transform:uppercase;letter-spacing:.5px;font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:10px;font-weight:700}:root:not(.dark-mode) .hud-label{color:#fff}.material-buttons{grid-template-rows:repeat(3,1fr);grid-template-columns:repeat(2,1fr);gap:6px;display:grid}.material-btn{appearance:none;border:2px solid var(--border);cursor:inherit;color:#fff;text-shadow:0 1px 2px #00000080;background:0 0;padding:5px 8px;font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:11px;font-weight:700;transition:transform .1s,box-shadow .1s}:root:not(.dark-mode) .material-btn{color:#fff;text-shadow:0 1px 2px #00000080;border-color:#1e1a1a}.material-btn:hover{transform:translateY(-1px);box-shadow:0 2px 4px #0003}:root:not(.dark-mode) .material-btn:hover{background:#ffffff1a;box-shadow:0 2px 4px #0000004d}.material-btn.active{border-color:var(--accent);transform:scale(1.02);box-shadow:0 0 6px #ffffff4d}:root:not(.dark-mode) .material-btn.active{background:#ffffff26;box-shadow:0 0 6px #fff3}.brush-slider{width:100%;cursor:inherit}.brush-size-display{text-align:center;color:#fff;font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:12px;font-weight:700}:root:not(.dark-mode) .brush-size-display{color:#fff}.clear-btn{appearance:none;background:var(--accent);color:#000;border:2px solid var(--border);cursor:inherit;width:100%;padding:6px 10px;font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:11px;font-weight:700}:root:not(.dark-mode) .clear-btn{color:#000;background:#fff;border-color:#1e1a1a}:root:not(.dark-mode) .clear-btn:hover{background:#f0f0f0}.clear-btn:hover{filter:brightness(1.1)}.hud-footer{border-top:1px solid var(--border);margin-top:auto;padding-top:6px}:root:not(.dark-mode) .hud-footer{border-color:#1e1a1a}.hud-hint{color:#fff;opacity:.7;text-align:center;font-family:Menlo,Monaco,Consolas,Courier New,monospace;font-size:9px;line-height:1.2}:root:not(.dark-mode) .hud-hint{color:#fff}.hud-slider-row{align-items:center;gap:8px;display:flex}.hud-slider-row .hud-label{flex-shrink:0;min-width:60px;margin:0;font-size:10px}.hud-slider-row input[type=range]{cursor:inherit;flex:1}.hud-slider-row .brush-size-display{text-align:right;min-width:45px;margin:0;font-size:11px}:root.dark-mode .material-btn{color:#fff;text-shadow:0 1px 2px #00000080}:root.dark-mode .clear-btn{color:#000}.dark-mode-toggle{appearance:none;cursor:inherit;font:inherit;color:var(--text);background:0 0;border:none;padding:2px 6px;font-size:14px}.dark-mode-toggle svg,:root .dark-mode-toggle img{display:block}:root.dark-mode .dark-mode-toggle svg{color:#fff;fill:#fff}:root.dark-mode .dark-mode-toggle use{color:#fff;fill:#fff;stroke:none}.view-tooltip{appearance:none;background:var(--bg-window);color:var(--text);border:2px solid var(--border);box-shadow:0 6px 18px var(--shadow);font:inherit;z-index:2147483647;pointer-events:auto;border-radius:6px;padding:6px 10px;font-size:12px;line-height:1;position:fixed;transform:translate(12px,12px)}.view-tooltip:hover,.view-tooltip:focus{filter:brightness(1.05)}.html-screen-wrapper,.html-screen-wrapper>div{transform-style:preserve-3d;-webkit-transform-style:preserve-3d}.menu-trigger-apple{letter-spacing:.5px;padding:2px 6px;font-weight:700}.menu-trigger-apple .apple-pixel{image-rendering:pixelated;filter:invert();width:15px;height:15px;display:block}:root.dark-mode .menu-trigger-apple .apple-pixel,:root:not(.dark-mode) .menu-trigger-apple .apple-pixel{filter:invert()}.theme-toggle-anim{width:17px;height:17px;position:relative}.theme-toggle-anim .sun,.theme-toggle-anim .moon{will-change:transform,opacity;transition:opacity .28s,transform .28s;display:block;position:absolute;top:0;left:0}.theme-toggle-anim .moon{image-rendering:pixelated;justify-content:center;align-items:center;width:100%;height:100%;display:flex}.theme-toggle-anim .moon :where(img,svg){image-rendering:pixelated;width:15px;height:15px;display:block}:root:not(.dark-mode) .theme-toggle-anim .sun{opacity:1;color:#fff;transform:translate(0)translateY(0)scale(1)}:root:not(.dark-mode) .theme-toggle-anim .moon{opacity:0;transform:translate(5px)translateY(4px)rotate(-10deg)scale(.9)}:root.dark-mode .theme-toggle-anim .sun{opacity:0;transform:translate(-5px)translateY(-4px)rotate(10deg)scale(.9)}:root.dark-mode .theme-toggle-anim .moon{opacity:1;transform:translate(0)translateY(0)scale(1)}.desktop-icon{transform-origin:50%;position:absolute}.desktop-icon.is-burst .icon{animation:.25s ease-out icon-pop}.desktop-icon.is-burst:after{content:"";opacity:.7;z-index:2;border:2px solid;border-radius:9999px;width:4px;height:4px;animation:.5s ease-out ring-pop;position:absolute;top:24px;left:50%;transform:translate(-50%,-50%)}.desktop-icon.is-burst .icon:after,.desktop-icon.is-burst .icon:before{content:"";opacity:.9;z-index:2;background:currentColor;border-radius:1px;width:2px;height:2px;position:absolute;top:50%;left:50%}.desktop-icon.is-burst .icon:after{animation:.5s ease-out sparkle;transform:translate(-50%,-50%)translate(10px,-6px)}.desktop-icon.is-burst .icon:before{animation:.5s ease-out sparkle;transform:translate(-50%,-50%)translate(-9px,8px)}@keyframes icon-pop{0%{transform:scale(1)}60%{transform:scale(1.15)}to{transform:scale(1)}}@keyframes ring-pop{0%{opacity:.9;transform:translate(-50%,-50%)scale(.6)}to{opacity:0;transform:translate(-50%,-50%)scale(1.8)}}@keyframes sparkle{0%{opacity:0;transform:translate(-50%,-50%)scale(.6)}30%{opacity:1}to{opacity:0;transform:translate(-50%,-50%)scale(1.8)}}.trash-icon{text-align:center;width:96px;padding:8px 4px}.trash-icon.is-over{outline:2px dashed var(--border);background:#ff000014}.trash-icon.has-items{filter:brightness(.9)contrast(1.05);transform:translateZ(0)}.trash-icon.has-items .icon{transform:scale(1.02)}.desktop-icon[data-id=blog].is-over{outline:2px dashed var(--border);background:#ff000014}.blog-browser{background:var(--bg-desktop);box-sizing:border-box;touch-action:auto;-webkit-overflow-scrolling:touch;width:100%;height:100%;min-height:0;padding:8px;position:relative;overflow:auto}.browser-icon{appearance:none;text-align:center;width:96px;color:var(--text);-webkit-user-select:none;user-select:none;cursor:inherit;z-index:1;background:0 0;border:none;padding:8px 4px;position:absolute}.browser-icon .icon{pointer-events:none;width:48px;height:48px;margin:0 auto 6px;display:block;position:relative}.browser-icon .icon-label{color:#fff;font-size:12px;line-height:1.2;display:block}:root.dark-mode .browser-icon .icon-label{color:#fff}.browser-icon.is-selected{outline:2px dashed var(--border);outline-offset:2px;background:#0000000d}:root.dark-mode .browser-icon.is-selected{background:#ffffff14}.browser-icon.dragging{z-index:1000;will-change:transform,opacity;-moz-user-select:none;backface-visibility:hidden;transform:translateZ(0);opacity:.7!important}.browser-icon.drag-over{outline:2px dashed var(--border);background:#ffffff1a}.browser-icon.folder .folder-count{background:var(--accent);color:#101010;text-align:center;border:1px solid var(--border);z-index:10;border-radius:8px;min-width:14px;padding:1px 4px;font-size:9px;font-weight:700;line-height:1.4;position:absolute;top:2px;right:2px;box-shadow:0 1px 3px #0000004d}.blog-posts{box-sizing:border-box;touch-action:auto;-webkit-overflow-scrolling:touch;height:100%;min-height:0;overflow:hidden auto}.blog-post{border-bottom:1px solid var(--border);margin-bottom:32px;padding-bottom:24px}.blog-post:last-child{border-bottom:none;margin-bottom:0}.blog-title{color:inherit;margin:0 0 6px;font-size:16px;font-weight:700}.blog-meta{color:var(--text);opacity:.7;margin-bottom:12px;font-size:11px}.blog-content{color:inherit;-webkit-user-select:text;user-select:text;font-size:13px;line-height:1.6}.blog-content p{-webkit-user-select:text;user-select:text;margin:0 0 12px}.blog-content p:last-child{margin-bottom:0}.blog-content pre,.blog-content .code-block,.blog-content .equation{-webkit-user-select:text;user-select:text}.equation{border-left:3px solid var(--border);white-space:pre-wrap;background:#0000000d;margin:12px 0;padding:8px 12px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:13px;overflow-x:auto}:root.dark-mode .equation{background:#ffffff14}.code-block{border:1px solid var(--border);white-space:pre;background:#0000000d;margin:12px 0;padding:10px;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:12px;line-height:1.5;overflow-x:auto}:root.dark-mode .code-block{background:#ffffff14}.drag-ghost{opacity:.9;filter:drop-shadow(0 4px 12px #00000059)}::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:silver;border:2px solid #f0f0f0;border-radius:6px}::-webkit-scrollbar-thumb:hover{background:#a0a0a0}:root.dark-mode ::-webkit-scrollbar-thumb{background:#404040;border:2px solid #1e1e1e}:root.dark-mode ::-webkit-scrollbar-thumb:hover{background:#505050}*{scrollbar-width:thin;scrollbar-color:silver transparent}:root.dark-mode *{scrollbar-color:#404040 transparent}:root,:root.dark-mode{cursor:auto}@media (pointer:coarse){:root,:root.dark-mode{cursor:auto}}.mobile .desktop{padding:8px}.mobile-portrait .desktop{padding:6px}.mobile-portrait .menubar-right .menu-user{display:none}.mobile-portrait .menu-trigger{padding:2px 6px}.mobile-portrait .desktop-icon{text-align:left;width:88px;padding:6px 12px}.mobile-portrait .desktop-icon .icon{width:48px;height:48px;margin:0 0 8px 6px}.mobile-portrait .desktop-icon .icon-label{text-align:left;white-space:normal;margin-left:6px;font-size:11px}.mobile-portrait .window{width:min(94vw,460px);left:3vw}.mobile-landscape .window{width:min(92vw,520px);left:4vw}.mobile-portrait .blog-window{width:min(94vw,460px)}.mobile-landscape .blog-window{width:min(92vw,600px)}
