:root{--bg: #FFFEF5;--fg: #1A1A1A;--accent: #3B82F6;--font-display: "VT323", monospace;--font-body: "Space Mono", monospace;--window-shadow: 5px 5px 0px var(--fg);--menu-bar-height: calc(56px * var(--ui-scale));--ui-scale: .8;--app-scale: 1;--body-text-size: calc(19px * var(--ui-scale));--body-text-line-height: calc(1.8 * var(--ui-scale));--desktop-grid-width: 94px;--desktop-grid-height: 112px;--desktop-icon-footprint: 94px;--desktop-icon-graphic: 83px;--desktop-icon-gap: 3px;--desktop-icon-padding-top: 6px;--desktop-icon-padding-bottom: 8px;--desktop-icon-label-size: 22px}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html,body,#root{width:100%;height:100%;overflow:hidden}body{font-family:var(--font-body);font-size:calc(16px * var(--ui-scale));color:var(--fg);background-color:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeSpeed}#root,.app-root{position:relative;width:100%;height:100%}.app-root{overflow:hidden}.app-scale{width:100%;height:100%;transform-origin:top left;overflow:hidden;zoom:var(--app-scale)}@supports not (zoom: 1){.app-scale{width:calc(100% / var(--app-scale));height:calc(100% / var(--app-scale));transform:scale(var(--app-scale))}}.resume-window{display:flex;flex-direction:column;height:100%;flex:1;min-height:0;gap:18px}.about-window{font-family:var(--font-body);font-size:var(--body-text-size);line-height:var(--body-text-line-height);display:flex;flex-direction:column;gap:20px}.about-window__intro{display:flow-root;min-height:0}.about-window__photo{width:220px;float:left;margin-right:24px;margin-bottom:12px;border:3px solid var(--fg);box-shadow:5px 5px 0 var(--fg);object-fit:cover;background:var(--bg)}.about-window__title{font-family:var(--font-display);font-size:calc(38px * var(--ui-scale));border-bottom:2px solid var(--fg);padding-bottom:6px;margin-bottom:12px}.about-window p{margin:0}.resume-window__header{display:flex;justify-content:space-between;align-items:center;border-bottom:2px solid var(--fg);padding-bottom:11px}.resume-window__header h2{font-family:var(--font-display);font-size:calc(32px * var(--ui-scale))}.resume-viewer{position:relative;width:100%;flex:1;min-height:calc(320px * var(--ui-scale));min-width:0;border:2px solid var(--fg);background:var(--bg);box-shadow:inset 0 0 0 3px var(--bg);overflow:auto}.resume-viewer object{width:100%;height:100%;display:block}.dither-bg{position:fixed;inset:0;z-index:0;pointer-events:none;background-color:var(--bg);background-image:radial-gradient(circle,var(--fg) .8px,transparent .8px);background-size:6px 6px;opacity:.12}.crosshatch{background-image:repeating-linear-gradient(45deg,transparent,transparent 3px,var(--fg) 3px,var(--fg) 5px),repeating-linear-gradient(-45deg,transparent,transparent 3px,var(--fg) 3px,var(--fg) 5px);background-color:var(--bg)}::-webkit-scrollbar{width:20px}::-webkit-scrollbar-track{background:var(--bg);border-left:3px solid var(--fg)}::-webkit-scrollbar-thumb{background:var(--fg);border:3px solid var(--bg)}::selection{background:var(--fg);color:var(--bg)}.pixelated{image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.decker-btn{display:inline-flex;align-items:center;gap:10px;padding:calc(10px * var(--ui-scale)) calc(22px * var(--ui-scale));background:var(--bg);border:3px solid var(--fg);font-family:var(--font-display);font-size:calc(26px * var(--ui-scale));font-weight:700;color:var(--fg);text-decoration:none;box-shadow:3px 3px 0 var(--fg);transition:background .08s,color .08s;cursor:pointer}.decker-btn:hover{background:var(--fg);color:var(--bg)}.decker-btn:active{box-shadow:none;transform:translate(3px,3px)}@keyframes screen-shake{0%,to{transform:translate(0)}10%{transform:translate(-8px,4px)}20%{transform:translate(6px,-6px)}30%{transform:translate(-4px,8px)}40%{transform:translate(8px,-2px)}50%{transform:translate(-6px,-4px)}60%{transform:translate(4px,6px)}70%{transform:translate(-2px,-8px)}80%{transform:translate(6px,4px)}90%{transform:translate(-4px,-2px)}}.app-glitch{animation:glitch-effect .15s infinite}@keyframes glitch-effect{0%{filter:none;transform:translate(0)}20%{filter:hue-rotate(90deg) saturate(5);transform:translate(-3px,2px)}40%{filter:invert(1);transform:translate(3px,-2px)}60%{filter:hue-rotate(270deg) contrast(2);transform:translate(-2px,-3px)}80%{filter:invert(1) hue-rotate(180deg);transform:translate(2px,3px)}to{filter:none;transform:translate(0)}}.menu-bar{position:fixed;top:0;left:0;right:0;height:var(--menu-bar-height);background:var(--bg);border-bottom:3px solid var(--fg);z-index:9999;display:flex;align-items:center;font-family:var(--font-display);font-size:calc(30px * var(--ui-scale));-webkit-user-select:none;user-select:none}.menu-bar__items{display:flex;align-items:center;height:100%;padding:0 calc(8px * var(--ui-scale))}.menu-bar__menu{position:relative;height:100%}.menu-bar__trigger{height:100%;padding:0 calc(16px * var(--ui-scale));background:none;border:none;font-family:var(--font-display);font-size:calc(30px * var(--ui-scale));font-weight:700;color:var(--fg);display:flex;align-items:center;white-space:nowrap}.menu-bar__trigger:hover,.menu-bar__trigger--active{background:var(--fg);color:var(--bg)}.menu-bar__trigger--logo{font-weight:700}.menu-bar__dropdown{position:absolute;top:100%;left:0;min-width:calc(260px * var(--ui-scale));background:var(--bg);border:3px solid var(--fg);box-shadow:4px 4px 0 var(--fg);z-index:10000;padding:calc(4px * var(--ui-scale)) 0}.menu-bar__item{display:flex;justify-content:space-between;align-items:center;width:100%;padding:calc(8px * var(--ui-scale)) calc(20px * var(--ui-scale));background:none;border:none;font-family:var(--font-display);font-size:calc(26px * var(--ui-scale));font-weight:700;color:var(--fg);text-align:left;white-space:nowrap}.menu-bar__item:hover:not(.menu-bar__item--disabled){background:var(--fg);color:var(--bg)}.menu-bar__item--disabled{color:#999;cursor:default}.menu-bar__shortcut{margin-left:calc(32px * var(--ui-scale));opacity:.6;font-size:calc(20px * var(--ui-scale))}.desktop-icon{display:flex;flex-direction:column;align-items:center;gap:var(--desktop-icon-gap, 4px);padding:var(--desktop-icon-padding-top, 8px) 0 var(--desktop-icon-padding-bottom, 10px);width:var(--desktop-icon-footprint, 118px);-webkit-user-select:none;user-select:none;cursor:default}.desktop-icon__graphic{display:flex;align-items:center;justify-content:center;width:var(--desktop-icon-graphic, 104px);height:var(--desktop-icon-graphic, 104px);transition:transform .15s ease;image-rendering:pixelated;image-rendering:-moz-crisp-edges;image-rendering:crisp-edges}.desktop-icon__graphic svg{shape-rendering:crispEdges}.desktop-icon__label{font-family:var(--font-display);font-size:var(--desktop-icon-label-size, 28px);font-weight:700;letter-spacing:.3px;color:var(--fg);text-align:center;line-height:1.05;padding:0;background:transparent;border:none;box-shadow:none;white-space:nowrap}.desktop-icon--selected .desktop-icon__label{text-decoration:underline}.desktop-icon--selected .desktop-icon__graphic{filter:invert(1)}.desktop{position:absolute;top:var(--menu-bar-height);left:0;right:0;bottom:0;overflow:hidden;background:var(--bg);border-left:3px solid var(--fg);border-right:3px solid var(--fg);box-shadow:inset 0 0 0 3px var(--fg)}.desktop__icon-wrapper{position:absolute;cursor:grab;-webkit-user-select:none;user-select:none;width:var(--desktop-grid-width, 118px);height:var(--desktop-grid-height, 140px)}.desktop__icon-wrapper:active{cursor:grabbing}.window{position:absolute;display:flex;flex-direction:column;background:var(--bg)}.window--clean{border:3px solid var(--fg);box-shadow:5px 5px 0 var(--fg)}.window--wobbly{border:3px solid var(--fg);box-shadow:5px 5px 0 var(--fg);border-radius:4px;transform:rotate(-.3deg)}.window--wobbly .window__titlebar{border-bottom-width:3px}.window__titlebar{display:flex;align-items:center;height:calc(44px * var(--ui-scale));padding:0 calc(12px * var(--ui-scale));border-bottom:3px solid var(--fg);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0}.window__titlebar:active{cursor:grabbing}.window__title{font-family:var(--font-display);font-size:calc(28px * var(--ui-scale));font-weight:700;color:var(--bg);text-shadow:none;margin-left:calc(12px * var(--ui-scale));background:var(--fg);padding:calc(2px * var(--ui-scale)) calc(10px * var(--ui-scale));line-height:1.3}.window__close{width:calc(26px * var(--ui-scale));height:calc(26px * var(--ui-scale));background:var(--bg);border:3px solid var(--fg);display:flex;align-items:center;justify-content:center;padding:0;flex-shrink:0;transition:background .1s}.window__close:hover{background:var(--fg)}.window__close:hover svg{stroke:var(--bg)}.window__content{padding:calc(24px * var(--ui-scale)) calc(32px * var(--ui-scale)) calc(32px * var(--ui-scale)) calc(24px * var(--ui-scale));overflow-y:auto;overflow-x:auto;scrollbar-gutter:stable both-edges;flex:1;display:flex;flex-direction:column;min-height:0;min-width:0;font-family:var(--font-body);font-size:var(--body-text-size);line-height:var(--body-text-line-height);letter-spacing:.01em;background:var(--bg)}.window__bottom-chrome{display:flex;justify-content:flex-end;align-items:flex-end;padding:calc(4px * var(--ui-scale)) calc(8px * var(--ui-scale)) calc(4px * var(--ui-scale)) 0;border-top:3px solid var(--fg);background:var(--bg);flex-shrink:0}.window--opening{animation:window-open .2s ease-out}@keyframes window-open{0%{opacity:0;transform:scale(.85)}to{opacity:1;transform:scale(1)}}.window--closing{animation:window-close .2s ease-in forwards}@keyframes window-close{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.85)}}.window--wobbly.window--opening{animation:window-open-wobbly .2s ease-out}@keyframes window-open-wobbly{0%{opacity:0;transform:scale(.85) rotate(-.3deg)}to{opacity:1;transform:scale(1) rotate(-.3deg)}}.window--wobbly.window--closing{animation:window-close-wobbly .2s ease-in forwards}@keyframes window-close-wobbly{0%{opacity:1;transform:scale(1) rotate(-.3deg)}to{opacity:0;transform:scale(.85) rotate(-.3deg)}}.window--mobile{position:fixed;top:var(--menu-bar-height)!important;left:0!important;right:0;bottom:0;width:100%!important;height:calc(100vh - var(--menu-bar-height))!important;max-height:none;border:none;box-shadow:none}.window--mobile .window__titlebar{cursor:default}.window__resize-handle{width:24px;height:24px;cursor:nwse-resize;background-image:linear-gradient(135deg,transparent 30%,var(--fg) 30%,var(--fg) 35%,transparent 35%,transparent 45%,var(--fg) 45%,var(--fg) 50%,transparent 50%,transparent 60%,var(--fg) 60%,var(--fg) 65%,transparent 65%,transparent 75%,var(--fg) 75%,var(--fg) 80%,transparent 80%)}.window__resize-handle:hover{opacity:.7}.window--mobile .window__bottom-chrome{display:none}
