:root{--os-teal: #008080;--os-silver: #c0c0c0;--os-navy: #000080;--os-white: #ffffff;--os-black: #000000;--os-gray: #808080;--os-light-gray: #dfdfdf}*{box-sizing:border-box}body,html{margin:0;padding:0;width:100%;height:100dvh;overflow:hidden;font-family:VT323,monospace;-webkit-font-smoothing:none;font-size:16px}.bevel-outset{border-top:2px solid var(--os-white);border-left:2px solid var(--os-white);border-right:2px solid var(--os-black);border-bottom:2px solid var(--os-black);box-shadow:inset 1px 1px var(--os-light-gray),inset -1px -1px var(--os-gray)}.bevel-inset{border-top:2px solid var(--os-gray);border-left:2px solid var(--os-gray);border-right:2px solid var(--os-white);border-bottom:2px solid var(--os-white);box-shadow:inset 1px 1px var(--os-black),inset -1px -1px var(--os-light-gray)}.desktop{background-color:var(--os-teal);width:100vw;height:calc(100dvh - 40px);position:relative;display:grid;grid-auto-columns:110px;grid-template-rows:repeat(auto-fill,130px);grid-auto-flow:column;align-content:start;justify-content:start;padding:16px;gap:16px 32px;overflow-x:auto;overflow-y:hidden}.crt-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;background:linear-gradient(#12101000 50%,#0000001a 50%);background-size:100% 4px;z-index:9999}.win-window{position:absolute;background-color:var(--os-silver);display:flex;flex-direction:column;width:600px;min-width:300px;max-width:90vw;max-height:80vh;resize:both;overflow:hidden}.win-titlebar{background-color:var(--os-navy);color:var(--os-white);padding:2px 4px;display:flex;justify-content:space-between;align-items:center;font-weight:700;cursor:default;user-select:none}.win-titlebar.inactive{background-color:var(--os-gray);color:var(--os-light-gray)}.win-titlebar-text{flex-grow:1;text-transform:lowercase}.win-close-btn{background-color:var(--os-silver);color:#000;width:20px;height:20px;font-weight:700;text-align:center;line-height:16px;cursor:pointer;padding:0;font-size:14px}.win-close-btn:active{background-color:var(--os-silver);border-top:2px solid var(--os-gray);border-left:2px solid var(--os-gray);border-right:2px solid var(--os-white);border-bottom:2px solid var(--os-white)}.win-content{padding:8px;flex-grow:1;background-color:var(--os-white);border:2px inset var(--os-gray);margin:4px;overflow-y:auto;color:var(--os-black);font-size:18px}.taskbar{position:absolute;bottom:0;left:0;width:100%;height:40px;background-color:var(--os-silver);display:flex;align-items:center;padding:2px 4px;z-index:9000}.start-btn{background-color:var(--os-silver);font-weight:700;height:100%;padding:0 10px;display:flex;align-items:center;justify-content:center;font-size:18px;cursor:pointer;margin-right:10px;white-space:nowrap;flex-shrink:0;border-top:2px solid var(--os-white);border-left:2px solid var(--os-white);border-right:2px solid var(--os-black);border-bottom:2px solid var(--os-black)}.taskbar-tab{height:100%;padding:0 10px;background-color:var(--os-silver);display:flex;align-items:center;margin-right:4px;cursor:pointer;max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-transform:lowercase}.start-menu{position:absolute;bottom:40px;left:0;display:flex;background-color:var(--os-silver);z-index:9999;min-width:250px;box-shadow:2px 2px 5px #00000080}.start-menu-brand{background:linear-gradient(180deg,var(--os-navy) 0%,#000040 100%);color:var(--os-white);padding:4px 6px;display:flex;align-items:flex-end;writing-mode:vertical-rl;transform:rotate(180deg);font-size:18px;font-weight:700;letter-spacing:2px}.start-menu-items{display:flex;flex-direction:column;flex-grow:1;padding:2px}.start-menu-item{display:flex;align-items:center;padding:8px 12px;cursor:pointer;font-size:16px;text-transform:capitalize}.start-menu-item:hover{background-color:var(--os-navy);color:var(--os-white)}.start-menu-divider{height:2px;background-color:var(--os-gray);border-bottom:1px solid var(--os-white);margin:4px 2px}.start-menu-icon{width:24px;height:24px;margin-right:12px;background-size:contain;background-position:center;background-repeat:no-repeat}.desktop-icon{width:110px;display:flex;flex-direction:column;align-items:center;text-align:center;padding:16px 8px;cursor:pointer;position:relative;gap:16px}.desktop-icon:focus .desktop-icon-text,.desktop-icon.selected .desktop-icon-text{background-color:var(--os-navy);color:var(--os-white);border:1px dotted var(--os-white)}.desktop-icon-img-wrapper{height:90px;width:100%;display:flex;align-items:center;justify-content:center}.desktop-icon-img{width:64px;height:64px;object-fit:contain;image-rendering:pixelated;image-rendering:crisp-edges;position:relative;background-size:contain;background-position:center;background-repeat:no-repeat;transform:scale(1.35);transform-origin:center center}.icon-folder{background:linear-gradient(var(--os-teal) 40%,transparent 40%),linear-gradient(to right,#ffca28 100% 100%);border:2px solid var(--os-black);border-top-left-radius:8px;box-shadow:inset 2px 2px #ffe082}.icon-folder:after{content:"";position:absolute;top:-10px;left:-2px;width:20px;height:10px;background-color:#ffca28;border:2px solid var(--os-black);border-bottom:none;box-shadow:inset 2px 2px #ffe082}.icon-paint{width:40px;height:36px;background-color:#fce4ec;border:2px solid var(--os-black);border-radius:50% 50% 50% 10%;box-shadow:inset 2px 2px #fff,inset -2px -2px #f48fb1;transform:rotate(-15deg) scale(1.35)}.icon-paint:before{content:"";position:absolute;width:8px;height:8px;border-radius:50%;background:red;border:1px solid var(--os-black);top:6px;left:4px;box-shadow:12px -2px #00f,18px 8px #ff0,6px 12px green}.icon-paint:after{content:"";position:absolute;width:6px;height:28px;background:#deb887;border:1px solid var(--os-black);transform:rotate(45deg);top:6px;left:-2px;border-radius:2px;box-shadow:inset -1px 0 #cf9b63}.icon-document{background:#fff;border:2px solid var(--os-black);box-shadow:inset -20px 0 0 -18px var(--os-silver)}.icon-kiosk{background-image:url(/case-studies/icons/icon_kiosk.png);background-size:contain;background-position:center;background-repeat:no-repeat;width:64px;height:64px;margin-top:6px;margin-bottom:6px}.icon-cgi{width:64px;height:64px;background-image:url(/case-studies/icons/icon_cgi.png);background-size:contain;background-position:center;background-repeat:no-repeat}.icon-movie{width:64px;height:64px;background-image:url(/case-studies/icons/icon_movie.png);background-size:contain;background-position:center;background-repeat:no-repeat}.icon-iphone{width:64px;height:64px;background-image:url(/case-studies/icons/icon_iphone.png);background-size:contain;background-position:center;background-repeat:no-repeat}.icon-50th{width:64px;height:64px;background-image:url(/case-studies/icons/icon_50th.png);background-size:contain;background-position:center;background-repeat:no-repeat}.icon-vr{width:64px;height:64px;background-image:url(/case-studies/icons/icon_vr.png);background-size:contain;background-position:center;background-repeat:no-repeat}.icon-crane{width:64px;height:64px;background-image:url(/case-studies/icons/icon_crane.png);background-size:contain;background-position:center;background-repeat:no-repeat}.icon-tv{width:64px;height:64px;background-image:url(/case-studies/icons/icon_tv.png);background-size:contain;background-position:center;background-repeat:no-repeat}.icon-cabinet{width:64px;height:64px;background-image:url(/case-studies/icons/icon_cabinet.png);background-size:contain;background-position:center;background-repeat:no-repeat}.icon-linkedin{width:64px;height:64px;background-image:url(/case-studies/icons/icon_linkedin.png);background-size:contain;background-position:center;background-repeat:no-repeat}.icon-studiolight{width:64px;height:64px;background-image:url(/case-studies/icons/icon_studiolight.png);background-size:contain;background-position:center;background-repeat:no-repeat}.icon-photo{width:48px;height:38px;background-color:var(--os-silver);border:2px solid var(--os-black);position:relative;box-shadow:inset 2px 2px var(--os-white),inset -2px -2px #888}.icon-photo:before{content:"";position:absolute;top:-8px;left:8px;width:16px;height:6px;background-color:var(--os-silver);border:2px solid var(--os-black);border-bottom:none}.icon-photo:after{content:"";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:20px;height:20px;background:radial-gradient(circle,#00BCD4 10%,var(--os-navy) 40%,var(--os-black) 80%);border:2px solid var(--os-black);border-radius:50%;box-shadow:0 0 0 2px var(--os-silver),0 0 0 4px var(--os-black),12px -12px 0 -6px #ffca28}.icon-speaker{width:36px;height:54px;background-color:#222;border:2px solid var(--os-black);border-radius:2px;position:relative;box-shadow:inset 2px 2px #555,inset -2px -2px #000}.icon-speaker:before{content:"";position:absolute;top:6px;left:50%;transform:translate(-50%);width:16px;height:16px;border-radius:50%;background-color:#111;border:1px solid #000;box-shadow:inset 0 0 4px #000}.icon-speaker:after{content:"";position:absolute;bottom:6px;left:50%;transform:translate(-50%);width:24px;height:24px;border-radius:50%;background-color:#111;border:1px solid #000;box-shadow:inset 0 0 6px #000}.icon-person{background:var(--os-silver);border:2px solid var(--os-black);position:relative;overflow:hidden}.icon-person:before{content:"";position:absolute;width:24px;height:24px;border-radius:50%;background:var(--os-navy);top:8px;left:50%;transform:translate(-50%)}.icon-person:after{content:"";position:absolute;width:44px;height:26px;border-radius:50% 50% 0 0;background:var(--os-navy);bottom:-2px;left:50%;transform:translate(-50%)}.desktop-icon-text{color:var(--os-white);text-align:center;user-select:none;padding:2px;font-size:16px;text-shadow:1px 1px 0 #000;width:100%;word-break:break-word;text-transform:lowercase}.paint-container{display:flex;flex-direction:column;height:100%;background-color:var(--os-silver);user-select:none}.paint-menubar{display:flex;padding:2px 4px;border-bottom:1px solid var(--os-gray);position:relative}.paint-menu-item{padding:2px 8px;cursor:pointer;position:relative}.paint-menu-item:hover{background-color:var(--os-navy);color:var(--os-white)}.paint-dropdown{position:absolute;top:100%;left:0;background-color:var(--os-silver);z-index:100;display:flex;flex-direction:column;min-width:120px;color:var(--os-black)}.paint-dropdown-item{padding:4px 8px;cursor:pointer}.paint-dropdown-item:hover{background-color:var(--os-navy);color:var(--os-white)}.paint-body{display:flex;flex-grow:1;padding:4px}.paint-sidebar{display:flex;flex-direction:column;width:40px;margin-right:4px;gap:4px}.paint-tool{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background-color:var(--os-silver);cursor:pointer;font-size:18px}.active-tool{background:repeating-linear-gradient(45deg,#dfdfdf,#dfdfdf 2px,silver 2px 4px)}.paint-canvas-wrapper{background-color:var(--os-gray);overflow:auto;display:flex;padding:2px}.paint-canvas-wrapper canvas{background-color:#fff}.canvas-pencil{cursor:crosshair}.canvas-eraser{cursor:cell}.canvas-stamp{cursor:copy}.paint-palette-bar{display:flex;padding:4px;gap:2px;background-color:var(--os-silver);border-top:1px solid var(--os-gray)}.paint-color-swatch{width:20px;height:20px;cursor:pointer}.active-swatch{border:1px dotted var(--os-black)}.paint-stamp-swatch{width:28px;height:28px;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:18px;background-color:var(--os-silver)}@media(max-width:768px){.desktop{display:grid!important;grid-template-columns:repeat(4,1fr)!important;grid-template-rows:auto!important;grid-auto-flow:row!important;gap:16px 4px!important;padding:24px 8px!important;justify-items:center!important;align-content:start!important}.desktop-icon-img-wrapper{transform:scale(.7)!important;margin-bottom:-16px!important}.desktop-icon-text{font-size:10px!important;overflow-wrap:break-word!important;word-break:normal!important;line-height:1.1!important;margin-top:-6px!important}.desktop-icon{position:relative!important;top:auto!important;left:auto!important;width:100%!important;touch-action:manipulation}.win-window{position:fixed!important;inset:16px 16px 56px!important;width:auto!important;height:auto!important;transform:none!important;margin:0!important;max-width:none!important;max-height:none!important}.win-content{overflow-y:auto!important;-webkit-overflow-scrolling:touch!important}.win-close-btn{padding:12px!important;min-width:44px!important;min-height:44px!important;display:flex!important;align-items:center!important;justify-content:center!important}}.clippy-overlay{position:fixed;bottom:50px;right:30px;z-index:99999;pointer-events:none;display:flex;flex-direction:column;align-items:flex-end;gap:8px}.clippy-img{width:220px;height:auto;filter:drop-shadow(2px 4px 6px rgba(0,0,0,.3));transform-origin:bottom right}.clippy-enter{animation:clippySlideIn .5s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes clippySlideIn{0%{transform:translate(300px) translateY(100px) scale(.3) rotate(15deg);opacity:0}to{transform:translate(0) translateY(0) scale(1) rotate(0);opacity:1}}.clippy-smack{animation:clippySmack .5s ease-in-out forwards}@keyframes clippySmack{0%{transform:scale(1) rotate(0)}15%{transform:scale(1.15) rotate(-8deg)}30%{transform:scale(.95) rotate(5deg)}50%{transform:scale(1.2) rotate(-3deg)}70%{transform:scale(1) rotate(2deg)}85%{transform:scale(1.05) rotate(-1deg)}to{transform:scale(1) rotate(0)}}.clippy-exit{animation:clippySlideOut .6s ease-in forwards}@keyframes clippySlideOut{0%{transform:translate(0) translateY(0) scale(1);opacity:1}to{transform:translate(400px) translateY(200px) scale(.2) rotate(30deg);opacity:0}}.clippy-speech{background:#ffc;border:2px solid #000;padding:10px 16px;font-family:"MS Sans Serif",Segoe UI,Tahoma,Geneva,Verdana,sans-serif;font-size:15px;font-weight:700;color:#000;position:relative;box-shadow:2px 2px #000;animation:speechPop .3s cubic-bezier(.34,1.56,.64,1) forwards;margin-right:20px}.clippy-speech-exit{animation:speechFade .3s ease-out forwards!important}.clippy-speech-tail{position:absolute;bottom:-12px;right:20px;width:0;height:0;border-left:10px solid transparent;border-right:10px solid transparent;border-top:12px solid #ffffcc;filter:drop-shadow(1px 1px 0px #000)}@keyframes speechPop{0%{transform:scale(0);opacity:0}to{transform:scale(1);opacity:1}}@keyframes speechFade{0%{transform:scale(1);opacity:1}to{transform:scale(.8);opacity:0}}
