@import "https://fonts.googleapis.com/css2?family=Lato:wght@300;400;700&display=swap";@import "https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;700&display=swap";code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html,body,#root{width:100%;height:100%;margin:0;padding:0;overflow:hidden}.App{width:100%;height:100%}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74c3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-toast-width:320px;--toastify-toast-offset:16px;--toastify-toast-top:max(var(--toastify-toast-offset), env(safe-area-inset-top));--toastify-toast-right:max(var(--toastify-toast-offset), env(safe-area-inset-right));--toastify-toast-left:max(var(--toastify-toast-offset), env(safe-area-inset-left));--toastify-toast-bottom:max(var(--toastify-toast-offset), env(safe-area-inset-bottom));--toastify-toast-background:#fff;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(to right, #4cd964, #5ac8fa, #007aff, #34aadc, #5856d6, #ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-bgo:.2}.Toastify__toast-container{z-index:var(--toastify-z-index);-webkit-transform:translate3d(0, 0, var(--toastify-z-index));width:var(--toastify-toast-width);box-sizing:border-box;color:#fff;padding:4px;position:fixed}.Toastify__toast-container--top-left{top:var(--toastify-toast-top);left:var(--toastify-toast-left)}.Toastify__toast-container--top-center{top:var(--toastify-toast-top);left:50%;transform:translate(-50%)}.Toastify__toast-container--top-right{top:var(--toastify-toast-top);right:var(--toastify-toast-right)}.Toastify__toast-container--bottom-left{bottom:var(--toastify-toast-bottom);left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{bottom:var(--toastify-toast-bottom);left:50%;transform:translate(-50%)}.Toastify__toast-container--bottom-right{bottom:var(--toastify-toast-bottom);right:var(--toastify-toast-right)}@media only screen and (width<=480px){.Toastify__toast-container{width:100vw;left:env(safe-area-inset-left);margin:0;padding:0}.Toastify__toast-container--top-left,.Toastify__toast-container--top-center,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translate(0)}.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translate(0)}.Toastify__toast-container--rtl{right:env(safe-area-inset-right);left:initial}}.Toastify__toast{--y:0;-ms-touch-action:none;touch-action:none;min-height:var(--toastify-toast-min-height);box-sizing:border-box;border-radius:var(--toastify-toast-bd-radius);max-height:var(--toastify-toast-max-height);font-family:var(--toastify-font-family);cursor:default;z-index:0;direction:ltr;justify-content:space-between;margin-bottom:1rem;padding:8px;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 12px #0000001a}.Toastify__toast--stacked{width:100%;transform:translate3d(0, var(--y), 0) scale(var(--s));transition:transform .3s;position:absolute}.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body,.Toastify__toast--stacked[data-collapsed] .Toastify__close-button{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{content:"";height:calc(var(--g) * 1px);position:absolute;bottom:100%;left:0;right:0}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{content:"";z-index:-1;height:100%;position:absolute;bottom:0;left:0;right:0;transform:scaleY(3)}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-body{flex:auto;align-items:center;margin:auto 0;padding:6px;display:flex}.Toastify__toast-body>div:last-child{word-break:break-word;flex:1}.Toastify__toast-icon{-webkit-margin-end:10px;flex-shrink:0;width:20px;margin-inline-end:10px;display:flex}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}@media only screen and (width<=480px){.Toastify__toast{border-radius:0;margin-bottom:0}}.Toastify__toast-theme--dark{background:var(--toastify-color-dark);color:var(--toastify-text-color-dark)}.Toastify__toast-theme--light,.Toastify__toast-theme--colored.Toastify__toast--default{background:var(--toastify-color-light);color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{color:var(--toastify-text-color-info);background:var(--toastify-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{color:var(--toastify-text-color-success);background:var(--toastify-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{color:var(--toastify-text-color-warning);background:var(--toastify-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{color:var(--toastify-text-color-error);background:var(--toastify-color-error)}.Toastify__progress-bar-theme--light{background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error{background:var(--toastify-color-transparent)}.Toastify__close-button{color:#fff;cursor:pointer;opacity:.7;z-index:1;background:0 0;border:none;outline:none;align-self:flex-start;padding:0;transition:all .3s}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;width:14px;height:16px}.Toastify__close-button:hover,.Toastify__close-button:focus{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{width:100%;height:100%;z-index:var(--toastify-z-index);opacity:.7;transform-origin:0;border-bottom-left-radius:var(--toastify-toast-bd-radius);position:absolute;bottom:0;left:0}.Toastify__progress-bar--animated{animation:linear forwards Toastify__trackProgress}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{right:0;left:initial;transform-origin:100%;border-bottom-left-radius:initial;border-bottom-right-radius:var(--toastify-toast-bd-radius)}.Toastify__progress-bar--wrp{border-bottom-left-radius:var(--toastify-toast-bd-radius);width:100%;height:5px;position:absolute;bottom:0;left:0}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{opacity:var(--toastify-color-progress-bgo);width:100%;height:100%}.Toastify__spinner{box-sizing:border-box;border:2px solid;border-color:var(--toastify-spinner-color-empty-area);border-right-color:var(--toastify-spinner-color);border-radius:100%;width:20px;height:20px;animation:.65s linear infinite Toastify__spin}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate(3000px)}60%{opacity:1;transform:translate(-25px)}75%{transform:translate(10px)}90%{transform:translate(-5px)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px, var(--y), 0)}to{opacity:0;transform:translate3d(2000px, var(--y), 0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate(-3000px)}60%{opacity:1;transform:translate(25px)}75%{transform:translate(-10px)}90%{transform:translate(5px)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px, var(--y), 0)}to{opacity:0;transform:translate3d(-2000px, var(--y), 0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translateY(3000px)}60%{opacity:1;transform:translateY(-20px)}75%{transform:translateY(10px)}90%{transform:translateY(-5px)}to{transform:translate(0,0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0, calc(var(--y) - 10px), 0)}40%,45%{opacity:1;transform:translate3d(0, calc(var(--y) + 20px), 0)}to{opacity:0;transform:translateY(-2000px)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translateY(-3000px)}60%{opacity:1;transform:translateY(25px)}75%{transform:translateY(-10px)}90%{transform:translateY(5px)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0, calc(var(--y) - 10px), 0)}40%,45%{opacity:1;transform:translate3d(0, calc(var(--y) + 20px), 0)}to{opacity:0;transform:translateY(2000px)}}.Toastify__bounce-enter--top-left,.Toastify__bounce-enter--bottom-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--top-right,.Toastify__bounce-enter--bottom-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--top-left,.Toastify__bounce-exit--bottom-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--top-right,.Toastify__bounce-exit--bottom-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0, var(--y), 0) scale3d(.3, .3, .3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{opacity:0;animation-timing-function:ease-in;transform:perspective(400px)rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px)rotateX(-20deg)}60%{opacity:1;transform:perspective(400px)rotateX(10deg)}80%{transform:perspective(400px)rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0, var(--y), 0) perspective(400px)}30%{transform:translate3d(0, var(--y), 0) perspective(400px) rotate3d(1, 0, 0, -20deg);opacity:1}to{transform:translate3d(0, var(--y), 0) perspective(400px) rotate3d(1, 0, 0, 90deg);opacity:0}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{visibility:visible;transform:translate(110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideInLeft{0%{visibility:visible;transform:translate(-110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideInUp{0%{visibility:visible;transform:translateY(110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideInDown{0%{visibility:visible;transform:translateY(-110%)}to{transform:translate3d(0, var(--y), 0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translate3d(110%, var(--y), 0)}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translate3d(-110%, var(--y), 0)}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translateY(500px)}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0, var(--y), 0)}to{visibility:hidden;transform:translateY(-500px)}}.Toastify__slide-enter--top-left,.Toastify__slide-enter--bottom-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--top-right,.Toastify__slide-enter--bottom-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--top-left,.Toastify__slide-exit--bottom-left{animation-name:Toastify__slideOutLeft;animation-duration:.3s;animation-timing-function:ease-in}.Toastify__slide-exit--top-right,.Toastify__slide-exit--bottom-right{animation-name:Toastify__slideOutRight;animation-duration:.3s;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp;animation-duration:.3s;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown;animation-duration:.3s;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}:root{--color-bg:#f4f9e9;--color-surface:#eef0eb;--color-muted:#b4b8ab;--color-primary:#284b63;--color-dark:#153243;--color-accent:#284b63;--color-text:#153243;--color-text-secondary:#4a5f6e;--border-radius-button:6px;--border-radius-form:5px;--transition-standard:.2s}body{color:var(--color-text);margin:0;padding:0;font-family:Lato,sans-serif}.desktop{background-color:var(--color-bg);flex-direction:column;width:100vw;height:100vh;display:flex;position:relative;overflow:hidden}.snap-preview{z-index:50;pointer-events:none;background:#284b6326;border:2px solid #284b6359;border-radius:8px;transition:all .15s;position:absolute}.desktop-icons{z-index:10;position:absolute;inset:0 0 48px}.desktop-icon{cursor:pointer;width:88px;color:var(--color-dark);background:0 0;border:2px solid #0000;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;padding:10px 6px;transition:all .15s;display:flex}.desktop-icon:hover{background:#284b6314;border-color:#284b6326}.desktop-icon:active{background:#284b6324}.desktop-icon-img{margin-bottom:4px}.desktop-icon-label{color:var(--color-dark);text-align:center;word-wrap:break-word;max-width:82px;font-family:Space Grotesk,sans-serif;font-size:10px;font-weight:600;line-height:1.3}.file-icon-shape{background:var(--file-color,#5a8a6e);border-radius:3px 10px 3px 3px;justify-content:center;align-items:center;width:44px;height:54px;display:flex;position:relative;box-shadow:0 2px 6px #00000026}.file-icon-fold{background:linear-gradient(135deg,#0000 50%,#0000001f 50%);border-radius:0;width:12px;height:12px;position:absolute;top:0;right:0}.file-icon-fold:after{content:"";background:var(--color-bg);clip-path:polygon(100% 0,0 100%,100% 100%);opacity:0;border-radius:0 0 0 4px;width:12px;height:12px;position:absolute;top:0;right:0}.file-icon-ext{color:#fff;letter-spacing:.5px;margin-top:4px;font-family:Space Grotesk,sans-serif;font-size:10px;font-weight:700}.folder-icon-shape{width:52px;height:42px;position:relative}.folder-icon-tab{background:var(--folder-color,#3d7ea6);opacity:.85;border-radius:4px 4px 0 0;width:20px;height:10px;position:absolute;top:0;left:0}.folder-icon-body{background:var(--folder-color,#3d7ea6);border-radius:0 4px 4px;justify-content:center;align-items:center;display:flex;position:absolute;inset:8px 0 0;box-shadow:0 2px 6px #00000026}.os-window{background:var(--color-surface);border-radius:8px;flex-direction:column;transition:box-shadow .2s;display:flex;overflow:hidden;box-shadow:0 4px 24px #1532432e,0 0 0 1px #15324314}.os-window.snapped{border-radius:0}.window-titlebar{background:var(--color-surface);border-bottom:1px solid var(--color-muted);cursor:grab;-webkit-user-select:none;user-select:none;flex-shrink:0;align-items:center;height:36px;min-height:36px;padding:0 0 0 14px;display:flex}.window-titlebar:active{cursor:grabbing}.window-title{color:var(--color-text);pointer-events:none;white-space:nowrap;text-overflow:ellipsis;flex:1;font-family:Space Grotesk,sans-serif;font-size:12px;font-weight:500;overflow:hidden}.win-controls{align-items:stretch;height:100%;margin-left:auto;display:flex}.win-control-btn{cursor:pointer;width:46px;height:100%;color:var(--color-text);background:0 0;border:none;justify-content:center;align-items:center;padding:0;transition:background-color .1s;display:flex}.win-control-btn:hover{background:#284b631a}.win-control-btn.close:hover{color:#fff;background:#e81123}.win-control-btn.minimize svg{margin-top:6px}.resize-handle{z-index:10;position:absolute}.resize-handle.n{cursor:n-resize;height:6px;top:-3px;left:8px;right:8px}.resize-handle.s{cursor:s-resize;height:6px;bottom:-3px;left:8px;right:8px}.resize-handle.e{cursor:e-resize;width:6px;top:8px;bottom:8px;right:-3px}.resize-handle.w{cursor:w-resize;width:6px;top:8px;bottom:8px;left:-3px}.resize-handle.ne{cursor:ne-resize;width:14px;height:14px;top:-3px;right:-3px}.resize-handle.nw{cursor:nw-resize;width:14px;height:14px;top:-3px;left:-3px}.resize-handle.se{cursor:se-resize;width:14px;height:14px;bottom:-3px;right:-3px}.resize-handle.sw{cursor:sw-resize;width:14px;height:14px;bottom:-3px;left:-3px}.window-content{background:#fff;flex:1;padding:24px;overflow:hidden auto}.taskbar{background:var(--color-dark);z-index:9999;border-top:1px solid #ffffff0f;align-items:center;height:48px;padding:0 16px;display:flex;position:absolute;bottom:0;left:0;right:0}.taskbar-start{flex-shrink:0;margin-right:16px}.taskbar-logo{color:var(--color-bg);letter-spacing:1px;cursor:pointer;background:0 0;border:none;border-radius:4px;padding:4px 8px;font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:700;transition:background .12s}.taskbar-logo:hover{background:#ffffff1a}.taskbar-windows{flex:1;gap:4px;display:flex;overflow-x:auto}.taskbar-button{color:#ffffffb3;cursor:pointer;white-space:nowrap;background:#ffffff0f;border:1px solid #ffffff14;border-radius:4px;align-items:center;gap:6px;padding:6px 14px;font-family:Lato,sans-serif;font-size:12px;transition:all .12s;display:flex}.taskbar-button:hover{color:#ffffffe6;background:#ffffff1f}.taskbar-button.focused{border-bottom:2px solid var(--color-bg);color:#fff;background:#ffffff29}.taskbar-button.minimized{opacity:.45}.taskbar-clock{color:#ffffffbf;font-family:Space Grotesk,sans-serif;font-size:12px;font-weight:500}.taskbar-right{flex-shrink:0;align-items:center;gap:8px;margin-left:16px;display:flex}.taskbar-tray-btn{color:#fff9;cursor:pointer;background:0 0;border:none;border-radius:4px;align-items:center;padding:4px;transition:all .12s;display:flex}.taskbar-tray-btn:hover{color:#ffffffe6;background:#ffffff1a}.taskbar-tray-btn.active{color:#a6e3a1}.volume-popup{z-index:10001;background:#1e1e2e;border:1px solid #313244;border-radius:8px;align-items:center;gap:10px;min-width:200px;padding:12px 16px;display:flex;position:absolute;bottom:52px;right:16px;box-shadow:0 4px 20px #0006}.volume-popup .volume-label{color:#cdd6f4;white-space:nowrap;font-family:Space Grotesk,sans-serif;font-size:11px}.volume-popup input[type=range]{accent-color:#a6e3a1;flex:1;height:4px}.context-menu{z-index:10002;background:#1e1e2e;border:1px solid #313244;border-radius:8px;min-width:200px;padding:6px 0;font-family:Space Grotesk,sans-serif;font-size:12px;position:fixed;box-shadow:0 6px 24px #00000073}.context-menu-item{color:#cdd6f4;cursor:pointer;text-align:left;width:100%;font-family:inherit;font-size:inherit;background:0 0;border:none;align-items:center;gap:10px;padding:8px 16px;transition:background .1s;display:flex}.context-menu-item:hover{background:#89b4fa1f}.context-menu-item .shortcut{color:#6c7086;margin-left:auto;font-size:10px}.context-menu-divider{background:#313244;height:1px;margin:4px 0}.start-menu{z-index:10001;background:#1e1e2e;border:1px solid #313244;border-radius:12px;min-width:280px;padding:16px;font-family:Space Grotesk,sans-serif;position:absolute;bottom:52px;left:16px;box-shadow:0 8px 32px #00000080}.start-menu-header{border-bottom:1px solid #313244;align-items:center;gap:12px;margin-bottom:8px;padding-bottom:12px;display:flex}.start-menu-avatar{background:var(--color-primary);color:#fff;border-radius:50%;justify-content:center;align-items:center;width:40px;height:40px;font-size:16px;font-weight:700;display:flex}.start-menu-name{color:#cdd6f4;font-size:14px;font-weight:600}.start-menu-subtitle{color:#6c7086;font-size:11px}.start-menu-item{color:#cdd6f4;cursor:pointer;text-align:left;background:0 0;border:none;border-radius:6px;align-items:center;gap:10px;width:100%;padding:10px 12px;font-family:inherit;font-size:12px;transition:background .1s;display:flex}.start-menu-item:hover{background:#89b4fa1f}.start-menu-divider{background:#313244;height:1px;margin:6px 0}.folder-view{min-height:100%}.projects-folder{flex-direction:column;height:100%;display:flex}.projects-grid{flex:1;grid-template-columns:repeat(2,1fr);gap:16px;min-height:0;display:grid;overflow-y:auto}.project-card{cursor:pointer;background:0 0;border:2px solid #0000;border-radius:8px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:0;padding:16px 12px;transition:all .15s;display:flex}.project-card:hover{background:#284b630f;border-color:#284b6326}.project-card:active{background:#284b631a}.project-card-thumb{aspect-ratio:16/10;background:var(--color-surface);border:1px solid var(--color-muted);border-radius:6px;width:100%;position:relative;overflow:hidden}.project-card-thumb img{object-fit:cover;width:100%;height:100%}.project-card-ext{background:var(--color-primary);color:#fff;border-radius:3px;padding:2px 6px;font-family:Space Grotesk,sans-serif;font-size:9px;font-weight:700;position:absolute;bottom:4px;right:4px}.project-card-name{color:var(--color-text);text-align:center;word-break:break-word;font-family:Space Grotesk,sans-serif;font-size:12px;font-weight:600}.project-card-summary{color:var(--color-text-secondary);text-align:center;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:11px;line-height:1.4;display:-webkit-box;overflow:hidden}.project-card-tags{flex-wrap:wrap;justify-content:center;gap:4px;display:flex}.project-card-tag{background:var(--color-primary);color:#fff;border-radius:4px;padding:2px 7px;font-family:Space Grotesk,sans-serif;font-size:9px;font-weight:600}.edu-list{flex-direction:column;gap:20px;display:flex}.edu-card{background:#fff;border:1px solid #b4b8ab66;border-radius:8px;align-items:center;gap:20px;padding:20px;transition:box-shadow .2s;display:flex;box-shadow:0 2px 8px #1532430d}.edu-card:hover{box-shadow:0 4px 16px #1532431a}.edu-icon-area{flex-direction:column;flex-shrink:0;align-items:center;gap:6px;display:flex}.edu-icon-thumb{border:1px solid var(--color-muted);background:#fff;border-radius:8px;justify-content:center;align-items:center;width:120px;height:120px;display:flex;position:relative;overflow:hidden}.edu-icon-thumb img{object-fit:contain;width:90%;height:90%}.edu-icon-ext{background:var(--color-primary);color:#fff;border-radius:3px;padding:2px 6px;font-family:Space Grotesk,sans-serif;font-size:9px;font-weight:700;position:absolute;bottom:4px;right:4px}.edu-icon-filename{color:var(--color-text-secondary);text-align:center;font-family:Space Grotesk,sans-serif;font-size:10px;font-weight:500}.edu-card-info{flex:1;min-width:0}.edu-card-info h3{color:var(--color-dark);margin:0 0 6px;font-family:Space Grotesk,sans-serif;font-size:1.15rem}.edu-dates{color:var(--color-primary);margin:0 0 8px;font-size:.9rem;font-style:italic}.edu-degree{color:var(--color-text-secondary);margin:0;font-size:.95rem;line-height:1.6}.window-content h2{color:var(--color-dark);margin-top:0;margin-bottom:20px;font-family:Space Grotesk,sans-serif;font-size:1.5rem}.window-content h3{color:var(--color-primary);font-family:Space Grotesk,sans-serif}.window-content p{color:var(--color-text-secondary);line-height:1.7}.about-inner{color:var(--color-text)}.about-content{justify-content:space-between;align-items:center;gap:24px;display:flex}.profile-picture{border:3px solid var(--color-muted);border-radius:50%;flex-shrink:0;width:160px;height:160px;overflow:hidden;box-shadow:0 4px 16px #15324326}.profile-picture img{object-fit:cover;width:100%;height:100%;display:block}.media-carousel{border-radius:6px;margin-bottom:16px;position:relative;overflow:hidden}.media-wrapper{transition:transform .5s ease-in-out;display:flex}.media-item{flex:0 0 100%;width:100%}.pane-image,.pane-video{object-fit:contain;background-color:var(--color-surface);border-radius:4px;width:100%;height:280px}.carousel-arrow{color:#fff;cursor:pointer;z-index:10;background-color:#15324399;border:none;border-radius:4px;justify-content:center;align-items:center;width:36px;height:36px;padding:8px;font-size:20px;line-height:1;transition:background-color .15s;display:flex;position:absolute;top:50%;transform:translateY(-50%)}.carousel-arrow:hover{background-color:#153243d9}.carousel-arrow.left{left:8px}.carousel-arrow.right{right:8px}.technologies{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.tech-tag{background-color:var(--color-primary);color:#fff;border-radius:4px;padding:4px 10px;font-size:.75rem;font-weight:500}.project-description ul{margin-top:8px;margin-bottom:8px;padding-left:20px;list-style-position:outside}.project-description li{color:var(--color-text-secondary);margin-bottom:6px;line-height:1.6}.skills-inner{color:var(--color-text)}.json-viewer{background:#1e1e2e;border-radius:10px;font-family:JetBrains Mono,Fira Code,Cascadia Code,Consolas,monospace;font-size:.85rem;line-height:1.7;overflow:hidden;box-shadow:0 4px 24px #00000040}.json-toolbar{background:#181825;border-bottom:1px solid #313244;justify-content:space-between;align-items:center;padding:10px 16px;display:flex}.json-filename{color:#cdd6f4;font-size:.8rem;font-weight:600}.json-meta{color:#6c7086;font-size:.75rem}.json-body{padding:16px 0;overflow-x:auto}.json-line{align-items:stretch;min-height:1.7em;display:flex}.json-line-num{text-align:right;color:#45475a;-webkit-user-select:none;user-select:none;box-sizing:border-box;background:#181825;border-right:1px solid #313244;flex-shrink:0;width:44px;min-width:44px;padding-right:10px;font-size:.75rem;line-height:1.7}.json-line-content{color:#cdd6f4;white-space:pre;padding-left:12px;line-height:1.7}.json-key{color:#89b4fa}.json-string{color:#a6e3a1}.json-bracket{color:#f9e2af}.json-colon{color:#cdd6f4}.json-comma{color:#6c7086}.contact-inner{color:var(--color-text)}.contact-inner form{flex-direction:column;gap:10px;max-width:100%;display:flex}.contact-inner label{color:var(--color-text);font-size:.9rem;font-weight:600}.contact-inner input,.contact-inner textarea{border:1px solid var(--color-muted);border-radius:var(--border-radius-form);color:var(--color-text);background:#fff;padding:10px 12px;font-family:Lato,sans-serif;font-size:14px;transition:border-color .15s}.contact-inner input:focus,.contact-inner textarea:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 2px #284b631a}.contact-inner textarea{resize:vertical;min-height:120px}.contact-inner button[type=submit]{background-color:var(--color-primary);color:#fff;border-radius:var(--border-radius-form);cursor:pointer;transition:background-color var(--transition-standard);border:none;padding:10px 20px;font-size:14px;font-weight:600}.contact-inner button[type=submit]:hover{background-color:var(--color-dark)}.readme{color:var(--color-text);max-width:800px}.readme-empty{color:var(--color-muted);text-align:center;padding:60px 20px}.readme-header h1{color:var(--color-dark);border-bottom:1px solid var(--color-muted);margin:0 0 8px;padding-bottom:12px;font-family:Space Grotesk,sans-serif;font-size:1.8rem}.readme-summary{color:var(--color-text-secondary);margin:8px 0 16px;font-size:1rem;line-height:1.6}.readme-badges{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.readme-badge{background:var(--color-primary);color:#fff;border-radius:12px;padding:3px 10px;font-family:Space Grotesk,sans-serif;font-size:11px;font-weight:600;display:inline-block}.readme-divider{border:none;border-top:1px solid var(--color-muted);margin:20px 0}.readme-section-title{color:var(--color-dark);border-bottom:1px solid #b4b8ab4d;margin:0 0 12px;padding-bottom:6px;font-family:Space Grotesk,sans-serif;font-size:1.25rem}.readme-media{margin-bottom:8px}.readme-media-dots{justify-content:center;gap:6px;margin-top:8px;display:flex}.readme-dot{background:var(--color-muted);cursor:pointer;border-radius:50%;width:8px;height:8px;transition:background .15s}.readme-dot.active{background:var(--color-primary)}.readme-callout{border-left:4px solid;border-radius:6px;margin:16px 0;padding:16px 18px}.readme-callout.tip{background:#f0f9f0;border-left-color:#2da44e}.readme-callout.note{border-left-color:var(--color-primary);background:#f0f4fa}.readme-callout-title{text-transform:uppercase;letter-spacing:.5px;margin-bottom:10px;font-family:Space Grotesk,sans-serif;font-size:.85rem;font-weight:700}.readme-callout.tip .readme-callout-title{color:#2da44e}.readme-callout.note .readme-callout-title{color:var(--color-primary)}.readme-list{margin:8px 0;padding-left:22px}.readme-list li{color:var(--color-text-secondary);margin-bottom:8px;font-size:.92rem;line-height:1.6}.readme-list li::marker{color:var(--color-primary)}.readme-tech-grid{flex-wrap:wrap;gap:8px;display:flex}.readme-tech-item{color:var(--color-dark);background:#284b6314;border:1px solid #284b631f;border-radius:4px;padding:4px 10px;font-family:SFMono-Regular,Consolas,Liberation Mono,Menlo,monospace;font-size:.82rem;display:inline-block}.modal-overlay{z-index:99999;-webkit-backdrop-filter:blur(3px);background-color:#15324399;justify-content:center;align-items:center;animation:.3s ease-in-out fadeIn;display:flex;position:fixed;inset:0}.modal-content{color:var(--color-text);z-index:100000;background-color:#fff;border-radius:8px;width:80%;max-width:800px;max-height:90vh;margin:20px;padding:20px;animation:.3s ease-in-out scaleIn;position:relative;overflow-y:auto;box-shadow:0 8px 30px #1532434d}.close-button{cursor:pointer;color:var(--color-muted);z-index:100100;border-radius:4px;justify-content:center;align-items:center;width:28px;height:28px;font-size:24px;transition:all .15s;display:flex;position:absolute;top:12px;right:16px}.close-button:hover{color:var(--color-text);background-color:#284b6314}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes scaleOut{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.95)}}.modal-closing{pointer-events:none;animation:.3s ease-in-out forwards fadeOut}.modal-closing .modal-content{animation:.3s ease-in-out forwards scaleOut}.terminal-container{cursor:text;background:#1a1b26;border-radius:0 0 8px 8px;flex-direction:column;height:100%;display:flex;overflow:hidden}.window-content:has(.terminal-container){background:#1a1b26;padding:0}.terminal-output{color:#c0caf5;flex:1;padding:12px 16px;font-family:JetBrains Mono,Fira Code,Cascadia Code,SF Mono,Consolas,monospace;font-size:13px;line-height:1.6;overflow-y:auto}.terminal-output::-webkit-scrollbar{width:8px}.terminal-output::-webkit-scrollbar-track{background:#1a1b26}.terminal-output::-webkit-scrollbar-thumb{background:#33467c;border-radius:4px}.terminal-line pre{font-family:inherit;font-size:inherit;line-height:inherit;white-space:pre-wrap;word-break:break-all;margin:0}.terminal-input-line{align-items:center;min-height:24px;padding:0;display:flex}.terminal-prompt{color:#7aa2f7;white-space:pre;flex-shrink:0;font-family:JetBrains Mono,Fira Code,Cascadia Code,SF Mono,Consolas,monospace;font-size:13px;font-weight:600}.terminal-input{color:#c0caf5;caret-color:#7aa2f7;background:0 0;border:none;outline:none;flex:1;padding:0;font-family:JetBrains Mono,Fira Code,Cascadia Code,SF Mono,Consolas,monospace;font-size:13px;line-height:1.6}.terminal-input::selection{background:#7aa2f74d}.snake-container{background:#0a0a0a;flex-direction:column;justify-content:center;align-items:center;gap:12px;height:100%;padding:16px;display:flex}.window-content:has(.snake-container){background:#0a0a0a;padding:0}.snake-header{justify-content:space-between;width:100%;max-width:400px;padding:0 4px;display:flex}.snake-score{color:#50fa7b;font-family:Space Grotesk,sans-serif;font-size:16px;font-weight:700}.snake-high-score{color:#6272a4;font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:500}.snake-canvas-wrapper{border:2px solid #282a36;border-radius:6px;position:relative;overflow:hidden}.snake-canvas{display:block}.snake-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#000000bf;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.snake-overlay-text{color:#f8f8f2;flex-direction:column;align-items:center;gap:12px;font-family:Space Grotesk,sans-serif;font-size:14px;display:flex}.snake-title{font-size:28px;font-weight:700}.snake-restart-btn{color:#0a0a0a;cursor:pointer;background:#50fa7b;border:none;border-radius:6px;padding:10px 28px;font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:700;transition:background .15s,transform .1s}.snake-restart-btn:hover{background:#69ff94;transform:scale(1.05)}.snake-footer{color:#6272a4;gap:20px;font-family:Space Grotesk,sans-serif;font-size:11px;display:flex}.minesweeper-container{background:#e8e8e8;flex-direction:column;align-items:center;gap:10px;height:100%;padding:16px;display:flex}.window-content:has(.minesweeper-container){background:#e8e8e8;padding:0}.minesweeper-header{background:silver;border:2px solid #fff;border-color:gray #fff #fff gray;justify-content:space-between;align-items:center;width:100%;max-width:300px;padding:6px 10px;display:flex}.minesweeper-counter{color:#f33;text-align:center;background:#222;border:1px inset #666;min-width:60px;padding:2px 8px;font-family:JetBrains Mono,Fira Code,monospace;font-size:18px;font-weight:700}.minesweeper-smiley{cursor:pointer;background:silver;border:2px solid gray;border-color:#fff gray gray #fff;padding:2px 6px;font-size:22px;line-height:1;transition:transform .1s}.minesweeper-smiley:hover{transform:scale(1.1)}.minesweeper-smiley:active{border-color:gray #fff #fff gray}.minesweeper-banner{text-align:center;border-radius:6px;padding:6px 20px;font-family:Space Grotesk,sans-serif;font-size:16px;font-weight:700}.minesweeper-banner.won{color:#155724;background:#d4edda;border:1px solid #c3e6cb}.minesweeper-banner.lost{color:#721c24;background:#f8d7da;border:1px solid #f5c6cb}.minesweeper-grid{background:silver;border:3px solid #fff;border-color:gray #fff #fff gray;flex-direction:column;display:flex}.minesweeper-row{display:flex}.minesweeper-cell{cursor:pointer;background:silver;border:2px solid gray;border-color:#fff gray gray #fff;justify-content:center;align-items:center;width:30px;height:30px;padding:0;font-family:Space Grotesk,sans-serif;font-size:14px;font-weight:700;line-height:1;transition:background 50ms;display:flex}.minesweeper-cell:hover:not(.revealed){background:#d4d4d4}.minesweeper-cell.revealed{cursor:default;background:#d4d4d4;border:1px solid #999}.minesweeper-cell.exploded{background:#f44!important}.minesweeper-footer{color:#666;gap:20px;margin-top:4px;font-family:Space Grotesk,sans-serif;font-size:11px;display:flex}@media screen and (width<=768px){.os-window{border-radius:0!important;width:100vw!important;height:calc(100vh - 48px)!important;top:0!important;left:0!important}.desktop-icons{bottom:48px}.desktop-icon{width:72px;padding:8px 4px}.desktop-icon-label{font-size:9px}.folder-grid{gap:8px}.folder-grid-item{width:110px;padding:8px}.folder-file-thumb{width:80px;height:64px}.profile-picture{width:120px;height:120px}.about-content{text-align:center;flex-direction:column-reverse}.edu-card{text-align:center;flex-direction:column;align-items:center}.projects-grid{grid-template-columns:1fr}.json-viewer{font-size:.72rem}.taskbar-button span{display:none}}.desktop.night-mode{--color-bg:#0f1923;--color-surface:#162230;--color-muted:#2a3a4a;--color-primary:#5fa8d3;--color-dark:#c8d6e5;--color-accent:#5fa8d3;--color-text:#c8d6e5;--color-text-secondary:#89a;background-color:var(--color-bg)}.desktop.night-mode .desktop-icon-label{color:var(--color-dark);text-shadow:0 1px 4px #0009}.desktop.night-mode .os-window{background:var(--color-surface);border-color:var(--color-muted)}.desktop.night-mode .window-titlebar{background:#1a2d3d}.desktop.night-mode .window-title{color:#c8d6e5}.desktop.night-mode .window-body{color:#c8d6e5;background:#162230}.desktop.night-mode .taskbar{background:#0a1118;border-top-color:#5fa8d326}.desktop.night-mode .snap-preview{background:#5fa8d31f;border-color:#5fa8d34d}.desktop.night-mode .context-menu{border-color:var(--color-muted);background:#1a2d3d}.desktop.night-mode .context-menu-item{color:#c8d6e5}.desktop.night-mode .context-menu-item:hover{background:#5fa8d326}.desktop.night-mode .start-menu{border-color:var(--color-muted);background:#1a2d3d}.desktop.night-mode .start-menu-item{color:#c8d6e5}.desktop.night-mode .start-menu-item:hover{background:#5fa8d31f}.desktop{transition:background-color 1.5s,color 1.5s}.desktop-widgets{z-index:5;pointer-events:none;flex-direction:column;gap:16px;width:280px;display:flex;position:absolute;top:24px;bottom:72px;right:24px}.desktop-widgets>*{pointer-events:auto}.widget-clock-card{-webkit-backdrop-filter:blur(20px);text-align:center;background:#ffffff8c;border:1px solid #fff9;border-radius:16px;padding:28px 24px 20px;transition:all .4s;box-shadow:0 4px 24px #0000000f}.night-mode .widget-clock-card{background:#162230b3;border-color:#5fa8d326;box-shadow:0 4px 24px #0000004d,0 0 40px #5fa8d30d}.widget-clock-time{justify-content:center;align-items:baseline;gap:2px;margin-bottom:8px;display:flex}.clock-digit{color:var(--color-dark);letter-spacing:-2px;font-family:Space Grotesk,sans-serif;font-size:52px;font-weight:700;line-height:1;transition:color 1.5s}.night-mode .clock-digit{color:#e2ecf5;text-shadow:0 0 20px #5fa8d34d}.clock-separator{color:var(--color-primary);font-family:Space Grotesk,sans-serif;font-size:48px;font-weight:300;line-height:1;animation:1s ease-in-out infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}.clock-seconds{color:var(--color-muted);min-width:24px;margin-left:4px;font-family:Space Grotesk,sans-serif;font-size:18px;font-weight:500}.night-mode .clock-seconds{color:#5fa8d380}.widget-clock-date{color:var(--color-text-secondary);justify-content:center;align-items:center;gap:6px;font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:500;transition:color 1.5s;display:flex}.widget-greeting-card{-webkit-backdrop-filter:blur(16px);background:#ffffff73;border:1px solid #ffffff80;border-radius:14px;align-items:center;gap:14px;padding:18px 20px;transition:all .4s;display:flex;box-shadow:0 2px 16px #0000000a}.night-mode .widget-greeting-card{background:#16223099;border-color:#5fa8d31f;box-shadow:0 2px 16px #00000040}.widget-greeting-icon{color:#fff;background:linear-gradient(135deg,#fbbf24,#f59e0b);border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:48px;height:48px;display:flex;box-shadow:0 4px 12px #fbbf244d}.night-mode .widget-greeting-icon{background:linear-gradient(135deg,#3b82f6,#6366f1);box-shadow:0 4px 12px #6366f14d}.widget-greeting-text{flex-direction:column;gap:2px;display:flex}.widget-greeting-hello{color:var(--color-dark);font-family:Space Grotesk,sans-serif;font-size:16px;font-weight:700;transition:color 1.5s}.widget-greeting-sub{color:var(--color-text-secondary);font-size:12px;font-weight:400;transition:color 1.5s}.widget-stats-card{-webkit-backdrop-filter:blur(12px);background:#ffffff59;border:1px solid #fff6;border-radius:14px;flex-direction:column;gap:10px;padding:14px 18px;transition:all .4s;display:flex;box-shadow:0 2px 10px #00000008}.night-mode .widget-stats-card{background:#16223073;border-color:#5fa8d314;box-shadow:0 2px 10px #0003}.widget-stat-row{color:var(--color-text-secondary);align-items:center;gap:8px;font-family:Space Grotesk,sans-serif;font-size:12px;transition:color 1.5s;display:flex}.widget-stat-value{color:var(--color-dark);margin-left:auto;font-weight:600;transition:color 1.5s}.desk-scene-bg{z-index:1;pointer-events:none;width:55%;min-width:450px;max-width:700px;position:absolute;bottom:48px;right:0}.desk-scene-bg.desk-scene-editing{z-index:20}.desk-scene-svg{opacity:.85;width:100%;height:auto;transition:opacity .4s;display:block}.night-mode .desk-scene-svg{opacity:.9}.desk-wall{transition:fill 1.5s}.desk-cursor{animation:1s step-end infinite cursorBlink}@keyframes cursorBlink{0%,50%{opacity:1}51%,to{opacity:0}}.desk-led{animation:2s ease-in-out infinite ledPulse}@keyframes ledPulse{0%,to{opacity:.6}50%{opacity:1}}.desk-star{animation:2s ease-in-out infinite twinkle}.desk-star.star-1{animation-delay:0s}.desk-star.star-2{animation-delay:.7s}.desk-star.star-3{animation-delay:1.4s}.desk-star.star-4{animation-delay:.3s}@keyframes twinkle{0%,to{opacity:.3}50%{opacity:1}}.desk-shooting-star{opacity:0;animation:6s ease-in-out infinite shootingStar}@keyframes shootingStar{0%,85%,to{opacity:0;transform:translate(0)}90%{opacity:.8}95%{opacity:0;transform:translate(30px,12px)}}.desk-moon-glow{animation:4s ease-in-out infinite moonGlow}@keyframes moonGlow{0%,to{opacity:.6}50%{opacity:1}}.desk-sun{animation:4s ease-in-out infinite sunPulse}@keyframes sunPulse{0%,to{opacity:1}50%{opacity:.85}}.desk-sun-rays{transform-origin:430px 55px;animation:30s linear infinite sunRaysSpin}@keyframes sunRaysSpin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.desk-clouds{animation:25s ease-in-out infinite alternate cloudDrift}.desk-clouds-2{animation:18s ease-in-out infinite alternate cloudDrift2}@keyframes cloudDrift{0%{transform:translate(0)}to{transform:translate(20px)}}@keyframes cloudDrift2{0%{transform:translate(0)}to{transform:translate(-15px)}}.desk-birds{animation:12s ease-in-out infinite birdsFly}@keyframes birdsFly{0%{transform:translate(0)}25%{transform:translate(8px,-3px)}50%{transform:translate(18px,-1px)}75%{transform:translate(25px,-4px)}to{opacity:0;transform:translate(35px,-2px)}}.desk-steam{animation:3s ease-in-out infinite steamRise}.desk-steam.steam-1{animation-delay:0s}.desk-steam.steam-2{animation-delay:1s}.desk-steam.steam-3{animation-delay:2s}@keyframes steamRise{0%{opacity:0;transform:translateY(0)scaleX(1)}40%{opacity:.8}to{opacity:0;transform:translateY(-10px)scaleX(1.5)}}.desk-bulb-glow{animation:3s ease-in-out infinite bulbPulse}@keyframes bulbPulse{0%,to{opacity:.3}50%{opacity:.6}}.desk-plant-sway{transform-origin:460px 207px;animation:6s ease-in-out infinite plantSway}@keyframes plantSway{0%,to{transform:rotate(0)}33%{transform:rotate(1deg)}66%{transform:rotate(-.5deg)}}.desk-cat-tail{transform-origin:521px 230px;animation:3s ease-in-out infinite tailWag}@keyframes tailWag{0%,to{transform:rotate(0)}50%{transform:rotate(10deg)}}.desk-cat-zzz{animation:3s ease-in-out infinite zzzFloat}@keyframes zzzFloat{0%,to{opacity:.6;transform:translateY(0)}50%{opacity:1;transform:translateY(-5px)}}.desk-code-lines{animation:.5s codeAppear}@keyframes codeAppear{0%{opacity:0}to{opacity:1}}.desk-scene-customize-btn{-webkit-backdrop-filter:blur(12px);color:#ffffffd9;cursor:pointer;pointer-events:auto;opacity:.5;background:#00000059;border:none;border-radius:20px;align-items:center;gap:5px;padding:6px 12px;font-family:Space Grotesk,sans-serif;font-size:11px;font-weight:600;transition:all .2s;display:flex;position:absolute;bottom:12px;right:12px}.desk-scene-customize-btn:hover{color:#fff;opacity:1;background:#0000008c;transform:scale(1.05)}.night-mode .desk-scene-customize-btn{color:#c8d6e5cc;background:#5fa8d333}.night-mode .desk-scene-customize-btn:hover{color:#e2ecf5;background:#5fa8d359}.desk-scene-panel{-webkit-backdrop-filter:blur(20px);z-index:10;pointer-events:auto;background:#fffffff2;border-radius:14px;flex-direction:column;width:220px;padding:14px;animation:.2s panelFadeIn;display:flex;position:absolute;bottom:48px;right:12px;box-shadow:0 8px 32px #00000026}.night-mode .desk-scene-panel{background:#0f1923f2;box-shadow:0 8px 32px #0006}@keyframes panelFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.desk-scene-panel-header{color:var(--color-dark);justify-content:space-between;align-items:center;margin-bottom:12px;font-family:Space Grotesk,sans-serif;font-size:13px;font-weight:700;display:flex}.desk-scene-panel-header button{color:var(--color-text-secondary);cursor:pointer;background:0 0;border:none;border-radius:6px;align-items:center;padding:4px;transition:all .15s;display:flex}.desk-scene-panel-header button:hover{color:var(--color-dark);background:#00000014}.night-mode .desk-scene-panel-header button:hover{background:#ffffff1a}.desk-scene-panel-items{flex-direction:column;gap:8px;display:flex}.desk-scene-toggle{cursor:pointer;-webkit-user-select:none;user-select:none;align-items:center;gap:10px;display:flex}.desk-scene-toggle input{display:none}.desk-scene-toggle-slider{background:var(--color-muted);border-radius:9px;flex-shrink:0;width:32px;height:18px;transition:background .25s;position:relative}.desk-scene-toggle-slider:after{content:"";background:#fff;border-radius:50%;width:14px;height:14px;transition:transform .25s;position:absolute;top:2px;left:2px;box-shadow:0 1px 3px #0003}.desk-scene-toggle input:checked+.desk-scene-toggle-slider{background:var(--color-primary)}.desk-scene-toggle input:checked+.desk-scene-toggle-slider:after{transform:translate(14px)}.desk-scene-toggle-label{color:var(--color-text-secondary);font-family:Space Grotesk,sans-serif;font-size:12px;font-weight:500}@media (width<=1100px){.desktop-widgets,.desk-scene-bg{display:none}}.mobile-status-bar{z-index:100;-webkit-backdrop-filter:blur(20px);background:#0000000d;flex-shrink:0;justify-content:space-between;align-items:center;padding:8px 20px;font-size:13px;font-weight:600;display:flex;position:sticky;top:0}.mobile-status-time{font-family:Space Grotesk,sans-serif}.mobile-status-right{align-items:center;gap:6px;font-size:11px;display:flex}.mobile-signal{letter-spacing:-2px;font-size:10px}.mobile-layout{color:#1a1a2e;background:#f4f9e9;flex-direction:column;width:100vw;height:100dvh;font-family:Space Grotesk,-apple-system,BlinkMacSystemFont,sans-serif;display:flex;position:relative;overflow:hidden}.mobile-home{-webkit-overflow-scrolling:touch;flex:1;padding:20px 16px 32px;overflow-y:auto}.mobile-header{flex-direction:column;align-items:center;gap:8px;padding:24px 0 20px;display:flex}.mobile-profile-pic{border:3px solid #284b6333;border-radius:50%;width:80px;height:80px;overflow:hidden;box-shadow:0 4px 20px #0000001a}.mobile-profile-pic img{object-fit:cover;width:100%;height:100%}.mobile-name{color:#1a1a2e;margin:0;font-size:22px;font-weight:700}.mobile-tagline{color:#555;margin:0;font-size:13px}.mobile-view-toggle{background:#0000000f;border-radius:10px;justify-content:center;gap:4px;width:fit-content;margin-bottom:16px;margin-left:auto;margin-right:auto;padding:3px;display:flex}.mobile-view-btn{color:#888;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:8px;justify-content:center;align-items:center;width:36px;height:30px;transition:all .2s;display:flex}.mobile-view-btn.active{color:#1a1a2e;background:#fff;box-shadow:0 1px 4px #0000001a}.mobile-app-grid{grid-template-columns:repeat(3,1fr);gap:20px 12px;max-width:360px;margin:0 auto;padding:0 8px;display:grid}.mobile-app-icon{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-direction:column;align-items:center;gap:6px;padding:4px;display:flex}.mobile-app-icon:active .mobile-app-icon-bg{transform:scale(.9)}.mobile-app-icon-bg{border-radius:16px;justify-content:center;align-items:center;width:60px;height:60px;transition:transform .15s;display:flex;box-shadow:0 4px 12px #0003}.mobile-app-icon-label{color:#1a1a2e;text-overflow:ellipsis;white-space:nowrap;max-width:80px;font-size:11px;font-weight:500;overflow:hidden}.mobile-app-list{background:#fff;border-radius:14px;flex-direction:column;gap:2px;max-width:400px;margin:0 auto;padding:0 4px;display:flex;overflow:hidden;box-shadow:0 1px 4px #0000000f}.mobile-app-list-item{cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;background:#fff;border:none;border-bottom:1px solid #0000000d;align-items:center;gap:14px;padding:12px 14px;transition:background .15s;display:flex}.mobile-app-list-item:last-child{border-bottom:none}.mobile-app-list-item:active{background:#f0f0f2}.mobile-app-list-icon{border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;width:40px;height:40px;display:flex}.mobile-app-list-label{color:#1a1a2e;flex:1;font-size:15px;font-weight:500}.mobile-app-list-arrow{color:#c7c7cc;font-size:20px;font-weight:300}.mobile-dock{-webkit-backdrop-filter:blur(30px);z-index:50;background:#ffffff26;border:1px solid #fff3;border-radius:28px;gap:16px;padding:12px 24px;display:flex;position:fixed;bottom:16px;left:50%;transform:translate(-50%)}.mobile-dock-item{cursor:pointer;-webkit-tap-highlight-color:transparent;background:#fff3;border:none;border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;transition:transform .15s;display:flex}.mobile-dock-item:active{transform:scale(.88)}.mobile-page-view{background:#f5f5f7;border-radius:12px 12px 0 0;flex-direction:column;flex:1;min-height:0;margin-top:4px;display:flex;overflow:hidden}.mobile-page-header{-webkit-backdrop-filter:blur(20px);z-index:10;background:#ffffffd9;border-bottom:1px solid #00000014;flex-shrink:0;align-items:center;padding:12px 16px;display:flex;position:sticky;top:0}.mobile-back-btn{color:#3b82f6;cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;flex-shrink:0;align-items:center;gap:4px;padding:4px 0;font-family:inherit;font-size:15px;font-weight:500;display:flex}.mobile-page-title{text-align:center;color:#1a1a2e;flex:1;font-size:16px;font-weight:600}.mobile-page-spacer{flex-shrink:0;width:60px}.mobile-page-content{-webkit-overflow-scrolling:touch;flex:1;min-height:0;padding:16px;overflow:hidden auto}.mobile-projects-list{flex-direction:column;gap:12px;display:flex}.mobile-project-card{cursor:pointer;text-align:left;-webkit-tap-highlight-color:transparent;background:#fff;border:none;border-radius:12px;gap:12px;padding:12px;transition:transform .15s;display:flex;box-shadow:0 1px 4px #0000000f}.mobile-project-card:active{transform:scale(.98)}.mobile-project-thumb{background:#e5e5e5;border-radius:8px;flex-shrink:0;width:80px;height:64px;overflow:hidden}.mobile-project-thumb img{object-fit:cover;width:100%;height:100%}.mobile-project-info{flex:1;min-width:0}.mobile-project-info h3{color:#1a1a2e;margin:0 0 4px;font-size:14px;font-weight:600}.mobile-project-info p{color:#666;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0 0 6px;font-size:12px;display:-webkit-box;overflow:hidden}.mobile-project-tags{flex-wrap:wrap;gap:4px;display:flex}.mobile-tag{color:#3b82f6;background:#eff6ff;border-radius:10px;padding:2px 8px;font-size:10px;font-weight:500}.mobile-page-content .about-inner,.mobile-page-content .folder-view,.mobile-page-content .skills-inner,.mobile-page-content .contact-inner{padding:0}.mobile-page-content .about-content{text-align:center;flex-direction:column-reverse;gap:16px}.mobile-page-content .profile-picture{width:100px;height:100px}.mobile-page-content .edu-card{text-align:center;flex-direction:column;align-items:center}.mobile-page-content .json-viewer{max-width:100%;font-size:.65rem;overflow:hidden}.mobile-page-content .json-body{-webkit-overflow-scrolling:touch;max-height:none;overflow:auto}.mobile-page-content .json-line{white-space:nowrap}.mobile-page-content .json-line-content{white-space:pre}.mobile-page-content .terminal-container{border-radius:12px;min-height:400px}.mobile-page-content .snake-container{border-radius:12px}.mobile-page-content .snake-canvas-wrapper{max-width:100%;overflow:hidden}.mobile-page-content .snake-canvas{max-width:100%;height:auto}.mobile-page-content .minesweeper-container{border-radius:12px;min-height:400px}.mobile-page-content .contact-inner h2{font-size:18px}.mobile-page-content .contact-inner input,.mobile-page-content .contact-inner textarea{font-size:16px}.mobile-page-content .readme{padding:0}.mobile-page-content .readme-header h1{font-size:18px;line-height:1.3}.mobile-page-content .readme-summary{font-size:13px}.mobile-page-content .readme-badges{flex-wrap:wrap;gap:6px}.mobile-page-content .readme-badge{padding:3px 8px;font-size:11px}.mobile-page-content .media-carousel{touch-action:pan-y;border-radius:8px;position:relative;overflow:hidden}.mobile-page-content .carousel-arrow{opacity:.9;background-color:#153243b3;width:32px;height:32px;padding:6px;font-size:16px}.mobile-page-content .pane-image,.mobile-page-content .pane-video{object-fit:contain;height:200px}.mobile-page-content .readme-media-dots{justify-content:center;padding:8px 0}.mobile-page-content .readme-callout{-webkit-overflow-scrolling:touch;word-wrap:break-word;overflow-wrap:break-word;overflow-x:auto}.mobile-page-content .readme-list{padding-left:16px}.mobile-page-content .readme-list li{word-wrap:break-word;overflow-wrap:break-word;font-size:13px;line-height:1.5}.mobile-page-content .readme-section-title{font-size:16px}.mobile-page-content .readme-tech-grid{flex-wrap:wrap;gap:6px}.mobile-page-content .readme-tech-item{padding:3px 8px;font-size:11px}.tablet-mode .mobile-app-grid.tablet-app-grid{grid-template-columns:repeat(4,1fr);gap:24px 20px;max-width:500px}.tablet-mode .mobile-app-icon-bg{border-radius:18px;width:68px;height:68px}.tablet-mode .mobile-app-icon-label{font-size:12px}.tablet-mode .mobile-profile-pic{width:90px;height:90px}.tablet-mode .mobile-name{font-size:26px}.tablet-mode .mobile-tagline{font-size:14px}.tablet-mode .mobile-page-content{padding:24px 32px}.tablet-mode .mobile-page-content>*{max-width:700px;margin-left:auto;margin-right:auto}.tablet-mode .mobile-app-list.tablet-app-list{max-width:500px}.tablet-mode .mobile-page-content .readme-header h1{font-size:22px}.tablet-mode .mobile-page-content .pane-image,.tablet-mode .mobile-page-content .pane-video{height:300px}.tablet-mode .mobile-page-content .json-viewer{font-size:.8rem}.tablet-mode .mobile-page-content .readme-list li{font-size:14px}.snake-touch-controls{justify-content:center;padding:12px 0 4px;display:flex}.snake-dpad{flex-direction:column;align-items:center;gap:4px;display:flex}.snake-dpad-row{gap:4px;display:flex}.snake-dpad-btn{color:#50fa7b;cursor:pointer;-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;touch-action:manipulation;background:#50fa7b26;border:none;border-radius:12px;justify-content:center;align-items:center;width:52px;height:52px;font-size:20px;transition:background .1s;display:flex}.snake-dpad-btn:active{background:#50fa7b59}.snake-dpad-center{color:#fff;background:#ffffff1a;font-size:16px}.snake-dpad-center:active{background:#ffffff40}@keyframes slideUp{0%{opacity:.5;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}
