.scene-canvas{touch-action:pan-y}.webgl-ready .scene-canvas{pointer-events:auto}.desk-controls[hidden],.desk-hotspot[hidden]{display:none!important}.desk-controls{position:absolute;z-index:6;right:24px;bottom:27px;width:min(360px,calc(100% - 32px));padding:17px;border:1px solid #82609d70;border-radius:18px;background:#130e1ce8;backdrop-filter:blur(20px);box-shadow:0 12px 45px #0005;color:#e9def6}.desk-controls-title{display:flex;justify-content:space-between;font:10px var(--mono);letter-spacing:.08em;color:#c69ee8;margin-bottom:13px}.desk-state{letter-spacing:0;color:#a2d7c7}.desk-buttons{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.desk-controls button{border:1px solid #59416e;border-radius:9px;background:#281b35;color:#eee2f8;padding:10px 7px;font:12px var(--sans);cursor:pointer}.desk-controls button[aria-pressed=true]{border-color:#d79aff;background:#704c8b}.desk-controls button:focus-visible,.desk-mouse-pad:focus-visible{outline:2px solid #e6b9ff;outline-offset:4px}.desk-controls button:disabled{opacity:.45;cursor:default}.desk-mouse-row{display:flex;align-items:center;gap:12px;margin-top:12px}.desk-mouse-pad{position:relative;width:145px;height:65px;border:1px solid #65477e;border-radius:12px;touch-action:none;background:linear-gradient(135deg,#39224c,#1a1223);cursor:move;overflow:hidden;flex:none}.desk-mouse-pad span{position:absolute;left:10px;bottom:7px;font:9px var(--mono);color:#b59bc7}.desk-mouse-pad i{position:absolute;width:15px;height:22px;border:1px solid #e0b6ff;border-radius:8px;left:calc(50% + var(--mx,0)*45px);top:calc(35% + var(--mz,0)*15px);transform:translate(-50%,-50%);background:#a073c3}.desk-controls .desk-enter{flex:1;background:#bf87ef;color:#1c0c2b;font-weight:650}.desk-instruction{font:11px/1.6 var(--sans);color:#b7a7c5;margin:12px 0 0;min-height:35px}.desk-hotspot{position:absolute;z-index:5;width:32px;height:32px;transform:translate(-50%,-50%);border:1px solid #dba7ff;border-radius:50%;color:#efdfff;background:#39224bd9;box-shadow:0 0 20px #ab6ce955;cursor:pointer;font-size:18px}.desk-hotspot[aria-pressed=true]{color:#b1ffe4;border-color:#9df5d3}.desk-controls~.tour-cue{left:25px;transform:none}.desk-hold .tour-cue{opacity:0}@media(max-width:650px){.desk-controls{right:16px;bottom:20px;padding:13px;width:calc(100% - 32px)}.desk-controls-title{margin-bottom:9px}.desk-controls button{padding:9px 5px;font-size:11px}.desk-mouse-pad{height:45px;width:125px}.desk-mouse-row{margin-top:9px}.desk-instruction{margin-top:8px;min-height:0;font-size:10px}.desk-hotspot{width:29px;height:29px}.tour-cue{bottom:12px}}@media(prefers-reduced-motion:reduce){.desk-controls,.desk-hotspot{display:none!important}}.run-console{display:none;position:absolute;z-index:2;left:0;right:0;bottom:65px;padding:22px 6vw;background:#0b0812;border-top:1px solid #71548c;color:#c4dfce;font:13px/1.8 var(--mono);box-shadow:0 -20px 50px #09051188}.is-running .run-console{display:block}.run-console span{display:block;animation:run-line .5s both}.run-console span:nth-child(2){animation-delay:.35s}.run-console span:nth-child(3){animation-delay:.7s}@keyframes run-line{0%{opacity:0;transform:translateY(10px);filter:blur(3px)}to{opacity:1;transform:none;filter:none}}@media(prefers-reduced-motion:reduce){.run-console span{animation:none}}.desk-controls button{min-height:44px}.desk-hotspot{width:40px;height:40px}@media(max-width:650px){.desk-hotspot{width:44px;height:44px}}.desk-mouse-pad[aria-disabled=true]{opacity:.5;pointer-events:none}.footer-actions{display:flex;align-items:center;gap:24px}#back-to-desk{font:inherit;color:inherit;cursor:pointer;border:0;padding:0;background:none}#back-to-desk:hover{color:#d39cff}body:not(.webgl-ready) #back-to-desk{display:none}@media(prefers-reduced-motion:reduce){#back-to-desk{display:none}}.desk-controls{width:300px;right:18px;bottom:18px;padding:12px;border-radius:14px}.desk-controls-title{font-size:9px;margin-bottom:9px;align-items:center;gap:8px}.desk-state{margin-left:auto}.desk-controls .desk-minimize{padding:0;width:22px;height:20px;min-height:20px;border:0;background:none;color:#cda9e7;font-size:18px;line-height:1}.desk-buttons{gap:5px}.desk-controls button{min-height:32px;padding:7px 4px;font-size:10px;border-radius:7px}.desk-mouse-row{margin-top:8px;gap:8px}.desk-mouse-pad{width:112px;height:42px;border-radius:9px}.desk-mouse-pad span{font-size:8px;bottom:5px;left:8px}.desk-mouse-pad i{width:12px;height:17px;left:calc(50% + var(--mx,0)*34px);top:calc(35% + var(--mz,0)*9px)}.desk-instruction{font-size:9px;line-height:1.5;margin:8px 0 0;min-height:0}.desk-controls .desk-enter{font-size:10px}.desk-controls.is-minimized{width:230px;padding:10px 12px}.is-minimized .desk-controls-title{margin:0}.is-minimized .desk-buttons,.is-minimized .desk-mouse-row,.is-minimized .desk-instruction{display:none}.desk-hotspot{width:30px;height:30px;font-size:16px}@media(max-width:650px){.desk-controls{right:12px;bottom:14px;width:min(300px,calc(100% - 24px))}.desk-controls.is-minimized{width:220px}}@media(pointer:coarse){.desk-controls button{min-height:44px;font-size:11px}.desk-controls .desk-minimize{min-height:28px;width:28px}.desk-mouse-pad{height:50px}.desk-hotspot{width:44px;height:44px}}.desk-controls{left:18px;right:auto}@media(max-width:650px){.desk-controls{left:12px;right:auto}}.desk-controls{width:280px;bottom:max(14px,env(safe-area-inset-bottom));max-height:calc(100svh - 40px);overflow:auto}.desk-buttons{display:block}.desk-controls .tutorial-next{width:100%;background:#bc83e8;color:#190b25;font-weight:650;margin-top:10px;min-height:38px;font-size:12px}.tutorial-next[hidden],.desk-mouse-row[hidden]{display:none!important}.desk-instruction{font-size:12px;line-height:1.45;min-height:35px;margin-top:10px;color:#dbcee6}.tutorial-progress{display:flex;gap:5px}.tutorial-progress i{height:3px;flex:1;background:#3b2b4a;border-radius:3px}.tutorial-progress .done{background:#9dd7bb}.tutorial-progress .current{background:#d09bfa;box-shadow:0 0 8px #ba6cff88}.is-minimized .tutorial-progress{display:none}.desk-controls .desk-click{min-height:38px;padding:7px 10px}.desk-mouse-row{flex-wrap:wrap}.desk-controls .desk-enter{min-height:38px}.desk-mouse-pad{width:145px;height:66px}.desk-mouse-pad i{left:calc(50% + var(--mx,0)*60px);top:calc(50% + var(--mz,0)*22px)}.monitor-cursor{position:absolute;z-index:20;left:50%;top:50%;width:15px;height:23px;pointer-events:none;background:#f8edff;clip-path:polygon(0 0,100% 64%,58% 68%,38% 100%);filter:drop-shadow(0 0 4px #a66de9)}.monitor-touchpad{display:none}.portfolio-warp{position:fixed;inset:0;z-index:10000;background:#080312;pointer-events:all}.portfolio-warp canvas{width:100%;height:100%}.browser-opening{animation:monitor-pull .65s ease-in both}@keyframes monitor-pull{to{transform:scale(3.4) rotate(-3deg);filter:blur(12px);opacity:0}}@media(pointer:fine){.launch-editor,.launch-editor .portfolio-run{cursor:none}}@media(max-width:650px),(pointer:coarse){.desk-controls{width:min(280px,calc(100vw - 24px));left:12px;padding:12px}.desk-controls button,.desk-controls .tutorial-next{min-height:44px}.desk-controls .desk-minimize{min-width:44px;min-height:44px}.desk-controls-title{margin-bottom:6px}.desk-instruction{font-size:12px}.monitor-touchpad{display:flex;position:absolute;bottom:max(14px,env(safe-area-inset-bottom));left:14px;right:14px;gap:10px;padding:10px;background:#21152eea;border:1px solid #624379;border-radius:12px;z-index:10}.screen-pad{height:100px;flex:1;border:1px solid #75528c;background:#322140;border-radius:8px;touch-action:none;display:flex;align-items:flex-end;padding:9px;font:11px var(--mono);color:#cdb5de}.screen-click{width:65px;border:1px solid #cd9bee;background:#9c6dc2;color:#130920;border-radius:8px;font:600 13px var(--sans)}.editor-status{padding-bottom:155px}.editor-body{padding:18px}.editor-caption{margin-bottom:12px}.editor-bar{gap:10px;padding:0 14px}.editor-bar .window-dots{display:none}.portfolio-run{min-height:44px;padding:9px 18px}.live-code{font-size:11px}.browser-shell{height:90svh}.browser-google{font-size:45px}}@media(max-height:500px)and (orientation:landscape){.desk-controls{bottom:8px;left:8px;width:250px;padding:9px}.desk-instruction{min-height:0;margin:6px 0}.desk-controls-title{margin-bottom:5px}.screen-pad{height:58px}.editor-status{padding-bottom:105px}}@media(prefers-reduced-motion:reduce){.desk-controls{display:block!important}.desk-controls[hidden]{display:none!important}.launch-editor:not([hidden]),.browser-launch:not([hidden]){display:flex!important}.monitor-cursor{display:none}.browser-opening{animation:none}.cinematic-tour,.tour-sticky,.scene-canvas{display:block!important}}@media(prefers-reduced-motion:reduce){body:not(.portfolio-launched) .cinematic-tour{height:400svh}.tour-sticky{position:sticky;top:0;height:100svh}.webgl-ready .greeting-scene,.webgl-ready .desk-scene{display:none!important}.story-mode:not(.portfolio-launched) .portfolio-world{opacity:0;visibility:hidden}.story-mode.portfolio-launched .cinematic-tour{display:none!important}}.desk-desktop[hidden],.desk-desktop [hidden]{display:none!important}.desk-desktop{position:absolute;inset:5% 5% 7%;z-index:8;transition:inset .8s ease,transform .8s ease;min-width:0}.monitor-frame{height:100%;border:13px solid #08060d;border-bottom-width:28px;border-radius:14px;background:#100a1b;box-shadow:0 0 0 2px #58416e,0 24px 70px #0008;display:flex;flex-direction:column;position:relative;overflow:hidden}.monitor-frame:after{content:"G / DEV";position:absolute;bottom:-23px;left:48%;font:9px var(--mono);color:#77638b}.desktop-toolbar,.game-toolbar,.saved-browser-bar{display:flex;justify-content:space-between;align-items:center;gap:10px;padding:9px 14px;background:#281b35;color:#d4bddf;font:11px var(--mono);flex-shrink:0}.desk-desktop button{cursor:pointer;color:#e5d4f3;border:1px solid #78548d;background:#382248;border-radius:7px;padding:8px 12px;min-height:36px;font:12px var(--sans)}.desk-desktop button:focus-visible{outline:2px solid #f1cfff;outline-offset:2px}.desktop-tutorial{padding:10px 16px;background:#1c1426;color:#d6c6e1;font:12px/1.4 var(--sans);flex-shrink:0;border-bottom:1px solid #583c70}.saved-browser{display:flex;flex:1;min-height:0;flex-direction:column;margin:10px;border:1px solid #78518e;border-radius:10px;overflow:hidden}.saved-browser iframe{width:100%;flex:1;min-height:0;border:0;background:#0c0812}.saved-browser-bar .close-portfolio{font-size:23px;padding:0 12px;min-height:32px}.desktop-apps{margin:auto;padding:20px;display:flex;gap:16px;flex-wrap:wrap;justify-content:center;text-align:center;overflow:auto}.desktop-apps h2,.desktop-apps p{width:100%;margin:0 0 4px}.desktop-apps h2{font-size:clamp(22px,3vw,36px)}.desktop-apps p{font:13px var(--sans);color:#b8a6c7}.desktop-apps [data-game]{width:210px;min-height:120px;font-size:30px;border-color:#9971b8;background:linear-gradient(140deg,#44275c,#24172f)}.desktop-apps strong{display:block;font-size:18px;margin:8px}.desktop-apps span{display:block;font-size:11px;color:#c9b4d9}.desktop-apps .reopen-portfolio{width:100%;max-width:436px}.game-window{display:flex;flex:1;min-height:0;flex-direction:column;align-items:center;overflow:auto}.game-toolbar{width:100%;box-sizing:border-box}.game-help{padding:8px 16px;color:#ccb7db;font:12px/1.4 var(--sans);text-align:center;max-width:700px}.desk-game{display:block;width:min(100%,720px);max-height:calc(100svh - 310px);object-fit:contain;min-height:90px;touch-action:none;outline:none}.game-actions{display:flex;align-items:center;justify-content:center;gap:20px;padding:9px}.game-arrows{display:flex;gap:5px}.game-arrows button{width:38px;padding:4px}.game-arrows.horizontal [data-dir=up],.game-arrows.horizontal [data-dir=down]{display:none}.desktop-pointer{display:none;pointer-events:none}.desk-desktop.is-wide{inset:24% 23% 34% 29%;transform:perspective(1200px) rotateY(-12deg)}.desk-desktop.is-wide .desktop-tutorial{font-size:9px;padding:5px}.desk-desktop.is-wide .desktop-toolbar{padding:4px;font-size:8px}.desk-desktop.is-wide button{padding:4px;font-size:9px;min-height:24px}.desk-desktop.is-wide .desktop-apps [data-game]{width:125px;min-height:70px}.desk-desktop.is-wide .desktop-apps h2{font-size:18px}.desk-desktop.is-wide .desktop-apps strong{font-size:12px}.desk-desktop.is-wide .desktop-apps{padding:8px;gap:6px}.desk-desktop.is-wide .desktop-apps span,.desk-desktop.is-wide .desktop-apps p,.desktop-open .tour-cue{display:none}@media(max-width:650px),(pointer:coarse){.desk-desktop{inset:8% 10px 10%}.monitor-frame{border-width:7px;border-bottom-width:18px}.desktop-toolbar{font-size:9px;padding:6px}.desk-desktop button{min-height:44px;padding:7px 10px}.desktop-tutorial{padding:9px;font-size:11px}.desktop-apps{padding:12px;gap:10px}.desktop-apps [data-game]{width:100%;min-height:85px;font-size:22px}.desktop-apps strong{margin:4px;font-size:16px}.game-help{font-size:11px;padding:8px}.desk-game{max-height:calc(100svh - 370px)}.game-toolbar{font-size:9px;padding:6px}.game-actions{gap:8px;padding:7px;flex-wrap:wrap}.game-arrows button{width:44px;min-height:44px}.desk-desktop.is-wide{inset:28% 12% 36%;transform:none}.desk-desktop.is-wide .desktop-apps{display:none}.desk-desktop.is-wide .desktop-tutorial{font-size:10px}.desk-desktop.is-wide .desktop-toolbar button{min-height:44px;font-size:11px}.desk-desktop.is-wide .desktop-toolbar{min-height:44px}}@media(prefers-reduced-motion:reduce){.desk-desktop{transition:none}}.welcome-view[hidden]{display:none!important}.welcome-view{position:absolute;inset:0;background:#160e20 url(welcome-wallpaper.png) center/cover;z-index:4;padding:6vh 6vw;color:#f1e8fa}.welcome-view h2{font:600 clamp(20px,3vw,42px)/1.2 var(--sans);max-width:65%;margin:0}.welcome-view p{font:14px var(--sans);color:#bfb1d0}.vscode-app{position:absolute;left:7%;top:29%;border:0;background:none;color:#eee2f9;padding:8px;cursor:pointer;display:flex;align-items:center;flex-direction:column;gap:10px;font:13px var(--sans)}.vscode-app b{display:grid;place-items:center;width:72px;height:66px;font:600 40px var(--mono);border:1px solid #54aff0;border-radius:14px;background:#096da3;box-shadow:0 10px 25px #0005}.is-welcome .portfolio-run,.is-welcome .editor-body,.is-welcome .editor-bar,.is-welcome .editor-status{visibility:hidden}.is-welcome .monitor-touchpad{z-index:22}.monitor-cursor{z-index:25}.is-welcome .welcome-view{cursor:none}.vscode-app:focus-visible{outline:2px solid #e3bcff;border-radius:10px}@media(max-width:650px){.welcome-view{padding:30px 24px}.welcome-view h2{max-width:95%;font-size:25px}.vscode-app{left:7%;top:28%}.vscode-app b{width:60px;height:58px}.welcome-view p{font-size:12px}}.launch-editor{inset:5% 4% 8%;border:12px solid #08060e;border-bottom-width:24px;border-radius:12px;box-shadow:0 0 0 2px #594168,0 20px 70px #0008;overflow:hidden}.launch-editor:after{content:"G / DEV";position:absolute;bottom:-20px;left:48%;font:8px var(--mono);color:#8d759e}@media(max-width:650px){.launch-editor{inset:5% 9px 8%;border-width:7px;border-bottom-width:17px}.monitor-touchpad{left:8px;right:8px}.screen-pad{height:90px}}.certificate-wall-controls[hidden],.certificate-wall-controls [hidden]{display:none!important}.certificate-wall-controls{position:absolute;right:18px;top:22px;z-index:9;color:#e2d1ee}.certificate-wall-controls button{border:1px solid #9f75ba;border-radius:9px;background:#21152de8;color:#e2d1ee;font:11px var(--sans);padding:10px 14px;cursor:pointer;min-height:38px}.wall-detail{width:260px;padding:16px;background:#160e20eb;border:1px solid #986bb0;border-radius:12px;box-shadow:0 16px 40px #0005}.wall-status{color:#c798e5;font:10px var(--mono)}.wall-detail h3{font-size:18px;line-height:1.3;margin:10px 0}.wall-detail p{color:#bbacc7;font-size:12px;line-height:1.5}.wall-detail>div{display:flex;gap:7px}.wall-detail button{padding:8px 11px}@media(max-width:650px){.certificate-wall-controls{right:12px;top:14px}.certificate-wall-controls button{min-height:44px}.wall-detail{width:230px;padding:12px}}.desk-controls .desk-enter{flex-basis:100%;width:100%;min-height:38px}.desk-controls .desk-click{flex:1}.desk-controls .desk-mouse-pad{flex:1.6;width:auto;min-width:140px}@media(pointer:coarse){.desk-controls .desk-enter{min-height:44px}}.tour-sticky:has(.launch-editor:not([hidden])) .scene-canvas,.tour-sticky:has(.desk-desktop:not([hidden]):not(.is-wide)) .scene-canvas{visibility:hidden}.tour-sticky:has(.launch-editor:not([hidden])) .tour-cue{display:none}.tour-sticky:has(.launch-editor:not([hidden])){background:radial-gradient(ellipse at center,#291338,#08060e 75%)}.desk-game{width:min(100%,720px,calc((100svh - 310px)*1.6));height:auto;max-height:none}@media(max-width:650px),(pointer:coarse){.desk-game{width:min(100%,720px,calc((100svh - 370px)*1.6));max-height:none}}.wall-inspecting .desk-controls,.wall-inspecting .desk-hotspot{display:none!important}.wall-inspecting .certificate-wall-controls{top:auto;right:auto;left:50%;bottom:max(14px,env(safe-area-inset-bottom));transform:translate(-50%);width:min(640px,calc(100% - 28px))}.wall-inspecting .wall-detail{width:auto;max-height:27svh;overflow:auto;padding:13px 16px}.wall-inspecting .wall-detail h3{font-size:17px;margin:6px 0}.wall-inspecting .wall-detail p{margin:6px 0 10px}.wall-inspecting .wall-detail>div{justify-content:flex-end}.wall-inspecting .wall-detail .wall-status{font-size:10px}@media(max-width:650px){.wall-inspecting .wall-detail{padding:11px 13px;max-height:30svh}.wall-inspecting .wall-detail h3{font-size:16px}.wall-inspecting .wall-detail button{min-height:44px}}.cert-badge.cert-logo{width:68px;min-width:68px;height:54px;padding:8px;background:#f6f0e8;border:1px solid #aa8abb55;border-radius:10px;display:grid;place-items:center;box-sizing:border-box}.cert-logo img{width:100%;height:100%;max-height:36px;object-fit:contain}.desk-height-controller[hidden],.desk-height-controller [hidden]{display:none!important}.desk-height-controller{position:absolute;z-index:8;transform:translate(-50%,-50%)}.height-hotspot{width:40px;height:40px;border:1px solid #a4f1dd;border-radius:50%;background:#14362cdd;color:#c3ffed;font-size:22px;cursor:pointer;box-shadow:0 0 0 5px #64d1af20,0 0 24px #74d6b855;animation:height-pulse 1.8s ease-in-out infinite}.height-hotspot:disabled{animation:none;opacity:.55;cursor:default}.height-popup{position:absolute;top:48px;left:50%;transform:translate(-50%);display:grid;grid-template-columns:1fr 1fr;gap:7px;width:240px;padding:14px;border:1px solid #6f5b83;border-radius:12px;background:#160f20f5;color:#dbc9ea;box-shadow:0 15px 35px #0008}.height-popup>div{grid-column:1/-1;display:flex;justify-content:space-between;font:10px var(--mono);align-items:center;margin-bottom:5px}.height-popup output{color:#9aefd5;font-size:19px}.height-popup button{border:1px solid #7c588e;background:#32213f;color:#ecdcf4;min-height:40px;border-radius:7px;font:12px var(--sans);cursor:pointer}.height-popup .height-close{position:absolute;right:-10px;top:-12px;width:28px;min-height:28px;border-radius:50%}@keyframes height-pulse{50%{box-shadow:0 0 0 9px #64d1af00,0 0 28px #74d6b888}}@media(pointer:coarse){.height-hotspot{width:48px;height:48px}.height-popup button{min-height:44px}}@media(prefers-reduced-motion:reduce){.height-hotspot{animation:none}}.desk-controls{width:280px;padding:12px 14px}.desk-controls .desk-instruction{margin-bottom:0;min-height:0}.desk-controls-title{margin-bottom:9px}.desk-object-mouse-tools[hidden]{display:none!important}.desk-object-mouse-tools{position:absolute;z-index:8;width:216px;padding:10px;border:1px solid #946bab;border-radius:12px;background:#1c1228ee;box-shadow:0 10px 30px #0006}.desk-object-mouse-tools .desk-mouse-row{margin:0;display:flex;flex-wrap:nowrap;gap:8px}.desk-object-mouse-tools .desk-mouse-pad{width:145px;height:65px;flex:1}.desk-object-mouse-tools .desk-click{min-height:44px;padding:8px;border:1px solid #a97cc5;border-radius:8px;color:#eeddf9;background:#684782;font:12px var(--sans);cursor:pointer}.desk-object-rgb{font:9px var(--mono)}.desk-hotspot{box-shadow:0 0 0 4px #b97fe622,0 0 20px #b97fe64d}.wall-inspecting .desk-object-mouse-tools{display:none!important}@media(pointer:coarse){.desk-hotspot{width:46px;height:46px}.desk-object-rgb{font-size:10px}}.webgl-ready .tour-sticky .scene-canvas{visibility:visible!important}.tour-sticky:has(.launch-editor:not([hidden])){background:none}.tour-sticky .on-monitor{position:absolute!important;inset:0 auto auto 0!important;width:1440px!important;height:850px!important;min-width:0!important;max-width:none!important;max-height:none!important;margin:0!important;transform-origin:0 0!important;border:0!important;border-radius:0!important;box-shadow:none!important;animation:none!important;transition:none!important;overflow:hidden;box-sizing:border-box}.on-monitor:after{display:none!important}.on-monitor .monitor-frame{border:0;border-radius:0;box-shadow:none}.on-monitor .monitor-frame:after{display:none}.on-monitor .editor-bar{height:65px;padding:0 30px;font-size:20px}.on-monitor .portfolio-run{font-size:22px;padding:10px 34px;min-height:44px}.on-monitor .editor-body{padding:28px 42px}.on-monitor .live-code{font-size:22px;line-height:1.5}.on-monitor .editor-caption{font-size:15px}.on-monitor .editor-status{padding:18px 40px;font-size:18px}.on-monitor .welcome-view{padding:65px 75px}.on-monitor .welcome-view h2{font-size:42px}.on-monitor .welcome-view p{font-size:24px}.on-monitor .vscode-app{font-size:22px}.on-monitor .vscode-app b{width:90px;height:85px;font-size:50px}.on-monitor .desktop-toolbar,.on-monitor .game-toolbar,.on-monitor .saved-browser-bar{font-size:21px;padding:12px 24px}.on-monitor .desktop-tutorial,.on-monitor .game-help{font-size:21px;padding:14px 24px}.on-monitor button{font-size:22px;min-height:50px}.on-monitor .desktop-apps{display:flex!important;padding:25px;gap:24px}.on-monitor .desktop-apps[hidden]{display:none!important}.on-monitor .desktop-apps h2{font-size:42px}.on-monitor .desktop-apps p{display:block!important;font-size:22px}.on-monitor .desktop-apps [data-game]{width:410px;min-height:170px;font-size:40px}.on-monitor .desktop-apps strong{font-size:30px}.on-monitor .desktop-apps span{display:block!important;font-size:19px}.on-monitor .desk-game{max-height:480px}.on-monitor .game-arrows button{width:60px}.on-monitor .browser-shell{width:100%;height:100%;border:0;border-radius:0}.on-monitor .browser-page{padding:25px}.on-monitor .browser-wordmark{font-size:82px}.on-monitor .browser-toolbar{font-size:22px}.on-monitor .browser-address{font-size:20px;height:48px}@media(max-width:650px),(pointer:coarse){.on-monitor .monitor-touchpad{position:fixed;inset:auto;display:none}.monitor-touchpad-detached{display:flex!important;position:absolute;bottom:12px;left:12px;right:12px;z-index:30;gap:10px;padding:10px;border:1px solid #624379;border-radius:12px;background:#21152eea}.monitor-touchpad-detached[hidden]{display:none!important}}.tour-sticky .on-monitor{padding:0!important;background:#100c19}.desk-desktop.on-monitor button{font-size:22px;min-height:50px}.desk-desktop.on-monitor .desktop-toolbar{padding:12px 24px;font-size:21px}.webgl-ready .scene-canvas{pointer-events:auto;touch-action:pan-y}.desk-input-ready .scene-canvas{touch-action:none}.monitor-off .launch-editor,.monitor-off .desk-desktop,.monitor-off .browser-launch{visibility:hidden!important}.desk-object-monitor{z-index:35!important}.on-monitor .live-code{height:100%;overflow:auto;scrollbar-width:none}.on-monitor .live-code::-webkit-scrollbar{display:none}.on-monitor .desktop-pointer{display:block;position:absolute;z-index:50;width:22px;height:30px;pointer-events:none;background:#f4e5ff;clip-path:polygon(0 0,100% 64%,58% 68%,38% 100%)}.cinematic-portal{background:transparent;overflow:hidden}.cinematic-portal canvas{position:absolute;inset:0}.warp-destination{position:absolute;left:50%;top:50%;width:100vw;height:100svh;overflow:hidden;background:#0b0812;border:1px solid #b58ce9;box-shadow:0 0 70px #a26aff99,0 0 170px #6941bd66;transform-origin:center;opacity:0;pointer-events:none}.warp-destination .topbar{position:absolute!important;inset:0 0 auto!important;visibility:visible!important;opacity:1!important;transform:none!important;animation:none!important}.warp-destination .hero{opacity:1!important;visibility:visible!important;transform:none!important;filter:none!important}.warp-destination .reveal,.warp-destination .typed-word,.warp-destination .title-line{opacity:1!important;clip-path:none!important;transform:none!important;filter:none!important;animation:none!important}.portal-result{display:none;width:75%;padding:35px;border:1px solid #62457a;border-radius:15px;background:#251832;color:#e6d4f5;margin-top:35px}.portal-result span{display:block;color:#a3d6bb;font:18px monospace}.portal-result strong{display:block;font:38px var(--sans);margin:15px 0}.portal-result p{font:22px var(--sans)}.browser-navigating .portal-result{display:block}.browser-navigating .browser-open-mark{display:none}.browser-navigating .browser-wordmark{font-size:55px;margin-bottom:10px}#back-to-desk{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:48px;padding:13px 23px;border:1px solid #ecc6ff;border-radius:999px;background:linear-gradient(115deg,#c291ff,#da69f4);color:#1a0b27;font:700 14px var(--sans);box-shadow:0 0 0 5px #bd78ee12,0 8px 30px #b965e944;transition:transform .2s,box-shadow .25s,filter .2s;animation:desk-invitation 2.8s ease-in-out infinite}#back-to-desk:hover{color:#190724;filter:brightness(1.12);transform:translateY(-3px);box-shadow:0 0 0 7px #d698ff22,0 12px 38px #c877ef88}#back-to-desk:focus-visible{outline:3px solid #fff;outline-offset:5px}#back-to-desk:active{transform:translateY(0)}.footer{align-items:center}.footer-actions{flex-wrap:wrap;row-gap:16px}@keyframes desk-invitation{50%{box-shadow:0 0 0 8px #c48af21c,0 8px 36px #bb6de975}}@media(prefers-reduced-motion:reduce){#back-to-desk{animation:none}}.saved-viewport{position:relative;flex:1;min-height:0;overflow:hidden;background:#0b0812}.saved-browser .saved-viewport iframe{position:absolute;flex:none;max-width:none;border:0;transform-origin:0 0}.desk-desktop.is-portfolio .desktop-toolbar,.desk-desktop.is-portfolio .desktop-tutorial{display:none!important}.desk-desktop.is-portfolio .saved-browser{margin:0;border:0;border-radius:0}.desk-desktop.is-portfolio .saved-browser-bar{min-height:42px;padding:6px 18px;font-size:17px}.desk-desktop.is-portfolio .close-portfolio{min-height:36px;font-size:24px;padding:0 14px}html:has(body.desk-locked){overflow:hidden;overscroll-behavior:none}body.desk-locked{overscroll-behavior:none}.desk-desktop.is-portfolio .saved-browser-bar>span{margin-right:auto}.desk-desktop.is-portfolio .warp-back{font-size:18px;padding:6px 18px;min-height:36px;color:#1a0b27;background:#c58cf3;border-color:#e3b8ff}.desktop-apps .open-chrome{width:290px;min-height:140px}.desktop-apps .warp-back{background:#a36ad2;color:#150920}.chrome-window[hidden]{display:none!important}.chrome-window{display:flex;flex:1;min-height:0;flex-direction:column;background:#17121d;color:#f0e8f7}.chrome-top{display:flex;align-items:center;gap:18px;padding:14px 26px;background:#2b2134;font:22px var(--sans)}.chrome-top .chrome-close{margin-left:auto;font-size:30px;padding:0 15px}.chrome-logo{display:block;width:29px;height:29px;flex-shrink:0;border-radius:50%;background:radial-gradient(circle,#4285f4 0 26%,#dfedff 27% 32%,transparent 33%),conic-gradient(#ea4335 0 33%,#fbbc05 33% 66%,#34a853 66%)}.chrome-logo.large{width:90px;height:90px;margin:0 auto 20px}.chrome-search{display:flex;gap:14px;align-items:center;padding:16px 24px;background:#211a28;font-size:30px}.chrome-search input{flex:1;min-width:0;background:#100c16;border:1px solid #675077;border-radius:28px;color:#f0e8f7;padding:14px 25px;font:23px var(--sans);outline:none}.chrome-search input:focus{border-color:#d29cff;box-shadow:0 0 0 3px #c18bea33}.chrome-home{margin:auto;text-align:center;padding:35px;max-width:1100px}.chrome-home h2{font:600 43px var(--sans);margin:0 0 18px}.chrome-home p{font:22px/1.6 var(--sans);color:#bfb1cb}.chrome-shortcuts{display:flex;gap:20px;justify-content:center;flex-wrap:wrap;margin:35px 0}.chrome-shortcuts a{display:flex;align-items:center;justify-content:center;min-height:55px;padding:12px 28px;border:1px solid #8b619f;border-radius:12px;background:#382447;color:#ead5fa;font:23px var(--sans)}.desk-desktop.is-chrome .desktop-toolbar,.desk-desktop.is-chrome .desktop-tutorial{display:none!important}.chrome-status{min-height:35px}.chrome-window .chrome-logo{box-sizing:border-box}.desk-desktop.is-portfolio .desk-finish{min-height:36px;padding:6px 14px;font-size:16px;background:#302039;color:#d4bedf}.desktop-apps .desk-finish{width:100%;max-width:436px;background:transparent;color:#cdb5dd;border-color:#79588e}.cinematic-ending .desk-controls,.cinematic-ending .desk-hotspot,.cinematic-ending .desk-height-controller,.cinematic-ending .wall-inspect-toggle,.cinematic-ending .tour-cue,.cinematic-ending .monitor-touchpad-detached{display:none!important}.cinematic-ending .scene-canvas{pointer-events:none}.sleep-outro[hidden]{display:none!important}.sleep-outro{position:absolute;inset:0;z-index:80;display:grid;place-items:center;background:linear-gradient(180deg,#08071422,#080714cc);color:#f0e7f9;text-align:center}.outro-copy{max-width:760px;padding:32px;transform:translateY(20px);animation:sleep-outro-in 1.8s ease both}.outro-kicker{font:11px var(--mono);letter-spacing:.25em;color:#b49acb}.outro-copy h2{font:600 clamp(30px,5vw,64px)/1.15 var(--sans);letter-spacing:-.045em;min-height:2.4em;margin:25px 0 12px}.outro-copy h2 i{display:inline-block;width:3px;height:.85em;margin-left:8px;background:#c591ed;animation:code-caret 1s steps(1) infinite;vertical-align:middle}.outro-name{font:18px var(--sans);color:#c3b1d3;opacity:0;transition:opacity 1s}.visit-again{margin-top:22px;min-height:44px;padding:10px 19px;border:1px solid #9674ad;border-radius:999px;background:#24172e99;color:#ead8f7;font:13px var(--sans);cursor:pointer;opacity:0;visibility:hidden;transition:opacity 1s,background .2s}.visit-again:hover{background:#64447d}.visit-again:focus-visible{outline:2px solid white;outline-offset:5px}.outro-complete .outro-name,.outro-complete .visit-again{opacity:1;visibility:visible}.outro-complete h2 i{animation:none;opacity:0}@keyframes sleep-outro-in{0%{opacity:0;transform:translateY(35px)}to{opacity:1;transform:translateY(20px)}}@media(prefers-reduced-motion:reduce){.outro-copy,.outro-copy h2 i{animation:none}}.cinematic-ending .certificate-wall-controls{display:none!important}
