:root{--os-primary:16 100% 50%;--os-secondary:220 60% 50%;--os-accent:16 100% 50%;--os-warning:38 90% 50%;--os-error:0 70% 50%;--os-bg-dark:220 13% 18%;--os-bg-darker:220 13% 15%;--os-bg-panel:220 13% 21%;--os-bg-elevated:220 13% 24%;--os-window-bg:0 0% 98%;--os-window-border:220 13% 75%;--os-window-border-inactive:220 10% 85%;--os-window-titlebar:220 13% 95%;--os-window-titlebar-active:220 13% 92%;--os-text-primary:220 13% 18%;--os-text-secondary:220 10% 45%;--os-text-muted:220 10% 65%;--os-text-on-dark:0 0% 95%;--os-shadow-sm:0 1px 2px 0 rgb(0 0 0/0.05);--os-shadow-md:0 4px 6px -1px rgb(0 0 0/0.1),0 2px 4px -2px rgb(0 0 0/0.1);--os-shadow-lg:0 10px 15px -3px rgb(0 0 0/0.1),0 4px 6px -4px rgb(0 0 0/0.1);--os-shadow-xl:0 20px 25px -5px rgb(0 0 0/0.1),0 8px 10px -6px rgb(0 0 0/0.1);--os-titlebar-height:36px;--os-taskbar-height:44px;--os-border-width:1px;--os-border-radius:8px;--os-animation-fast:150ms;--os-animation-normal:250ms;--os-animation-slow:400ms}.desktop-os{position:fixed;inset:0;background:linear-gradient(135deg,hsl(var(--os-bg-dark)) 0,hsl(var(--os-bg-darker)) 100%);overflow:hidden}.desktop-background{position:absolute;inset:0;background-image:radial-gradient(circle at 20% 50%,hsl(var(--os-primary)/.03) 0,transparent 50%),radial-gradient(circle at 80% 80%,hsl(var(--os-secondary)/.03) 0,transparent 50%)}.scan-lines{display:none}.os-window{position:absolute;display:flex;flex-direction:column;background:hsl(var(--os-window-bg));border:var(--os-border-width) solid hsl(var(--os-window-border-inactive));border-radius:var(--os-border-radius);box-shadow:var(--os-shadow-xl);transition:border-color var(--os-animation-fast),box-shadow var(--os-animation-fast);overflow:hidden;will-change:transform}.os-window--focused{border-color:hsl(var(--os-window-border));box-shadow:var(--os-shadow-xl),0 0 0 1px hsl(var(--os-primary)/.2);z-index:100}.os-window--minimized{display:none}.os-window--maximized{top:0!important;left:0!important;right:0!important;bottom:var(--os-taskbar-height)!important;width:100%!important;height:calc(100vh - var(--os-taskbar-height))!important;border-radius:0}.window-chrome{height:var(--os-titlebar-height);background:linear-gradient(to bottom,hsl(var(--os-window-titlebar)),hsl(var(--os-window-titlebar-active)));border-bottom:1px solid hsl(var(--os-window-border-inactive));display:flex;align-items:center;justify-content:space-between;padding:0 12px;cursor:move;-webkit-user-select:none;-moz-user-select:none;user-select:none;transition:all var(--os-animation-fast)}.os-window--focused .window-chrome{background:linear-gradient(to bottom,hsl(var(--os-window-titlebar)),hsl(var(--os-window-titlebar)));border-bottom-color:hsl(var(--os-window-border))}.window-chrome__title{display:flex;align-items:center;gap:8px;color:hsl(var(--os-text-secondary));font-size:13px;font-weight:500;transition:color var(--os-animation-fast)}.os-window--focused .window-chrome__title{color:hsl(var(--os-text-primary))}.window-chrome__icon{width:16px;height:16px;flex-shrink:0}.window-chrome__buttons{display:flex;gap:6px}.window-chrome__button{width:28px;height:28px;border:none;border-radius:50%;background:hsl(var(--os-text-muted)/.15);color:hsl(var(--os-text-secondary));cursor:pointer;transition:all var(--os-animation-fast);display:flex;align-items:center;justify-content:center;font-size:14px;line-height:1}.window-chrome__button:hover{background:hsl(var(--os-text-secondary)/.3);color:hsl(var(--os-text-primary))}.window-chrome__button--minimize:hover{background:hsl(38 90% 50%);color:white}.window-chrome__button--maximize:hover{background:hsl(120 60% 50%);color:white}.window-chrome__button--close:hover{background:hsl(0 70% 50%);color:white}.window-content{flex:1;overflow:auto;background:hsl(var(--os-window-bg));position:relative}.window-content::-webkit-scrollbar{width:12px;height:12px}.window-content::-webkit-scrollbar-track{background:hsl(var(--os-bg-dark))}.window-content::-webkit-scrollbar-thumb{background:hsl(var(--os-window-border-inactive));border-radius:6px;border:2px solid hsl(var(--os-bg-dark))}.window-content::-webkit-scrollbar-thumb:hover{background:hsl(var(--os-window-border));box-shadow:var(--os-glow-primary)}.window-content--loading:before{content:"";position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,hsl(var(--os-primary)),transparent);animation:loading-bar 1.5s ease-in-out infinite}@keyframes loading-bar{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.resize-handle{position:absolute;z-index:10}.resize-handle--n{top:0}.resize-handle--n,.resize-handle--s{left:0;right:0;height:4px;cursor:ns-resize}.resize-handle--s{bottom:0}.resize-handle--e{right:0}.resize-handle--e,.resize-handle--w{top:0;bottom:0;width:4px;cursor:ew-resize}.resize-handle--w{left:0}.resize-handle--ne{top:0;right:0;width:12px;height:12px;cursor:nesw-resize}.resize-handle--nw{top:0;left:0}.resize-handle--nw,.resize-handle--se{width:12px;height:12px;cursor:nwse-resize}.resize-handle--se{bottom:0;right:0}.resize-handle--sw{bottom:0;left:0;width:12px;height:12px;cursor:nesw-resize}.taskbar{position:fixed;bottom:0;left:0;right:0;height:var(--os-taskbar-height);background:linear-gradient(to bottom,hsl(var(--os-bg-panel)),hsl(var(--os-bg-darker)));border-top:1px solid hsl(0 0% 0%/.2);backdrop-filter:blur(10px);display:flex;align-items:center;padding:0 12px;gap:8px;z-index:1000;box-shadow:var(--os-shadow-lg)}.taskbar__windows{display:flex;gap:8px;flex:1}.taskbar__window-button{height:32px;min-width:100px;max-width:180px;padding:0 12px;background:hsl(0 0% 100%/.05);border:none;border-radius:4px;color:hsl(var(--os-text-on-dark));font-size:12px;cursor:pointer;transition:all var(--os-animation-fast);display:flex;align-items:center;gap:6px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;position:relative}.taskbar__window-button:hover{background:hsl(0 0% 100%/.1)}.taskbar__window-button--active{background:hsl(0 0% 100%/.15);color:hsl(var(--os-text-on-dark))}.taskbar__window-button--active:before{content:"";position:absolute;bottom:0;left:8px;right:8px;height:2px;background:hsl(var(--os-primary));border-radius:2px}.taskbar__window-button--minimized{opacity:.5}.taskbar__status{display:flex;align-items:center;gap:12px;color:hsl(var(--os-text-on-dark));font-size:12px;font-variant-numeric:tabular-nums}.taskbar__window-count{display:flex;align-items:center;gap:4px;opacity:.7}.taskbar__clock{font-weight:400;min-width:100px;text-align:right;display:flex;flex-direction:column;align-items:flex-end;line-height:1.2;gap:1px}.desktop-icons{position:absolute;inset:0;padding:20px;display:grid;grid-template-columns:repeat(auto-fill,90px);grid-auto-rows:90px;gap:16px;align-content:start;overflow:auto}.desktop-icon{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:8px;border-radius:6px;cursor:pointer;transition:background-color var(--os-animation-fast);text-decoration:none;color:hsl(var(--os-text-on-dark));position:relative}.desktop-icon:hover{background:hsl(0 0% 100%/.1)}.desktop-icon:active{background:hsl(0 0% 100%/.15)}.desktop-icon:focus{outline:none;background:hsl(var(--os-primary)/.2)}.desktop-icon__icon{width:48px;height:48px;font-size:32px;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 2px 4px hsl(0 0% 0%/.5))}.desktop-icon__label{font-size:11px;text-align:center;text-shadow:0 1px 2px hsl(0 0% 0%/.9),0 1px 4px hsl(0 0% 0%/.5);font-weight:500;line-height:1.2}@keyframes window-open{0%{opacity:0;transform:scale(.9) translateY(20px)}to{opacity:1;transform:scale(1) translateY(0)}}.os-window--opening{animation:window-open var(--os-animation-normal) ease-out}@keyframes window-close{0%{opacity:1;transform:scale(1) translateY(0)}to{opacity:0;transform:scale(.9) translateY(20px)}}.os-window--closing{animation:window-close var(--os-animation-normal) ease-in}@keyframes window-minimize{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.1) translateY(calc(100vh - var(--os-taskbar-height)))}}.os-window--minimizing{animation:window-minimize var(--os-animation-normal) ease-in}@keyframes window-restore{0%{opacity:0;transform:scale(.1) translateY(calc(100vh - var(--os-taskbar-height)))}to{opacity:1;transform:scale(1) translateY(0)}}.os-window--restoring{animation:window-restore var(--os-animation-normal) ease-out}@keyframes window-maximize{0%{border-radius:var(--os-border-radius)}to{border-radius:0}}.os-window--maximizing{animation:window-maximize var(--os-animation-fast) ease-out}@media (prefers-reduced-motion:reduce){.desktop-background,.os-window,.taskbar__window-button,.window-chrome__button{animation:none!important;transition:none!important}}.glass{background:hsl(var(--os-window-bg)/.95);backdrop-filter:blur(10px);border:1px solid hsl(var(--os-window-border)/.3)}