.window-drag-handle { cursor: grab; user-select: none; touch-action: none; }
.window-drag-handle button { cursor: pointer; }
.window-drag-handle.is-dragging { cursor: grabbing; }
.desktop .taskbar { z-index: 45; }
.window-controls { display: flex; align-items: center; gap: 5px; flex-shrink: 0; }
.window-control { width: 30px; height: 30px; display: grid; place-items: center; padding: 0; border: 1px solid #ffffff0b; border-radius: 9px; background: #ffffff04; color: #aab8c9; cursor: pointer; }
.window-control svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.window-control:hover { color: #eaf4ff; background: #ffffff0e; }
.window-controls .admin-window-close { margin: 0; }
.window-minimized { display: none !important; }
.desktop-window.window-sized { min-height: 0 !important; }
.desktop-window { container-type: inline-size; }
.desktop-window .store-sidebar { min-height: 0; overflow-y: auto; scrollbar-width: thin; scrollbar-color: #657c9233 transparent; }
.desktop-window #storeCategories { flex-shrink: 0; }
.desktop .admin-window[data-window-mode] { display: flex; flex-direction: column; }
.admin-window[data-window-mode] .admin-window-header { flex-shrink: 0; }
.admin-window[data-window-mode] .admin-window-content { flex: 1; min-height: 0; max-height: none; }
.window-snap-preview { position: fixed; z-index: 9; border: 1px solid #b9dfffa0; border-radius: 17px; background: #84bde526; box-shadow: inset 0 0 0 1px #ccecff10, 0 8px 40px #0002; pointer-events: none; }
.taskbar .app-minimized { opacity: .6; }
.taskbar .app-minimized::before { background: transparent; border: 1px solid #c1d4e6; width: 5px; height: 5px; }
@container (max-width: 620px) {
  .store-layout { grid-template-columns: 160px minmax(0, 1fr); }
  .store-grid { grid-template-columns: 1fr; }
  .store-content { padding: 20px; }
  .store-feature-art { right: -45px; opacity: .45; }
}
@container (max-width: 480px) {
  .store-layout { display: flex; flex-direction: column; }
  .store-sidebar { padding: 10px; border-right: 0; border-bottom: 1px solid #ffffff0b; flex-shrink: 0; }
  .store-search { margin-bottom: 8px; }
  #storeCategories { flex-direction: row; overflow-x: auto; gap: 3px; scrollbar-width: none; }
  .store-category { width: auto; white-space: nowrap; padding: 7px 9px; font-size: 10px !important; }
  .store-sidebar-footer { display: none; }
  .store-content { flex: 1; min-height: 0; padding: 17px; }
  .store-titlebar { padding-left: 14px; }
  .admin-only-badge { display: none; }
  .admin-window-header { padding-left: 12px; padding-right: 12px; }
  .admin-window-title { gap: 7px; }
  .desktop .admin-window h2 { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .window-controls { gap: 3px; }
}
@media (max-width: 600px) {
  .window-drag-handle { cursor: default; touch-action: auto; }
  .window-maximize { display: none; }
}
