#desktop{position:relative;width:100%;height:100%;overflow:hidden}
#desktop.hidden{display:none!important}
#startmenu.hidden{display:none!important}
.topbar{height:30px;background:#1a1f25;border-bottom:2px solid #5d6d7e;padding:0 12px;display:flex;align-items:center;justify-content:space-between}
.status{display:flex;align-items:center;gap:7px;font-size:12px}
.status-light{width:9px;height:9px;border-radius:50%;background:#42e66d;box-shadow:0 0 7px rgba(66,230,109,.9);animation:statusBlink 1.2s steps(2,end) infinite}
@keyframes statusBlink{50%{opacity:.25;box-shadow:none}}

.icon{position:absolute;width:80px;text-align:center;cursor:default;margin:10px 0}
.icon img{width:48px;height:48px;image-rendering:pixelated}
.icon span{display:inline-block;font-size:12px;padding:4px 8px;border-radius:4px}
.icon:hover span{background:#0a246a;color:white}

.taskbar{position:fixed;left:0;right:0;bottom:0;height:36px;background:#c0c0c0;border-top:2px solid #fff;display:flex;align-items:center;z-index:90000}
#startbtn{min-width:76px;min-height:30px;margin:2px 4px;border:2px outset #fff;padding:4px 14px;font-size:14px;font-weight:bold;cursor:pointer}
#tasks{flex:1;display:flex;gap:4px;padding:0 6px}
.taskbtn{border:2px outset #fff;background:#c0c0c0;padding:3px 10px}
.tray{border:2px inset #fff;margin-right:4px;padding:3px 8px}
.startmenu{position:fixed;bottom:36px;left:0;width:220px;background:#c0c0c0;border:2px outset #fff;color:#000}
.startmenu div{padding:8px}
.startmenu div:hover{background:#0a246a;color:#fff}
#startmenu>div{display:flex;align-items:center;gap:10px;min-height:32px}
.start-menu-icon{width:30px;height:30px;object-fit:contain;image-rendering:pixelated;flex:0 0 30px}

#context{z-index:100000;bottom:auto}
#context.hidden{display:none!important}
#context:not(.hidden){display:block!important}

@media (prefers-reduced-motion:reduce){
 .status-light{animation:none}
}

@media (max-width:760px), (hover:none) and (pointer:coarse){
 .topbar{height:34px;padding:0 8px}
 .icon{width:76px;margin:6px 0;touch-action:manipulation}
 .icon img{width:44px;height:44px}
 .taskbar{height:42px}
 #startbtn{min-width:70px;min-height:36px;margin:2px;padding:4px 10px}
 #tasks{min-width:0;overflow-x:auto;padding:0 2px;gap:2px}
 .taskbtn{flex:0 0 auto;max-width:130px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-height:34px;padding:3px 8px}
 .tray{flex:0 0 auto;margin-right:2px;padding:5px 4px;font-size:11px}
 .startmenu{bottom:42px;width:min(280px,calc(100vw - 8px));max-height:calc(100vh - 50px);overflow-y:auto}
 .startmenu div{padding:9px;min-height:36px}
 #context{max-width:calc(100vw - 8px);max-height:calc(100vh - 50px);overflow:auto}
}
