/* ============================================================
   Overview — activities, workspace thumbnails, app grid
   ============================================================ */
.overview-overlay{
  position:fixed;top:0;left:0;right:0;bottom:0;
  z-index:150;
  background:var(--bg-overlay);
  backdrop-filter:blur(10px);
  display:grid;
  grid-template-rows:auto 1fr auto;
  gap:12px;padding:14px;
  overflow:hidden;
}
.overview-overlay.hidden{display:none}
.overview-search-row{
  display:flex;justify-content:center;
}
.overview-search{
  width:100%;max-width:560px;
  background:rgba(20,12,16,.6);
  border:1px solid var(--border);
  border-radius:18px;
  display:flex;align-items:center;gap:10px;
  padding:6px 14px;
}
[data-theme="light"] .overview-search{background:rgba(250,249,246,.75)}
.overview-search input{
  background:transparent;border:0;outline:none;flex:1;
  color:inherit;font-size:15px;padding:6px 0;
}
.search-icon{color:var(--text-secondary);flex-shrink:0}

.work-thumb{
  padding:8px;background:transparent;border:2px solid transparent;
  border-radius:var(--radius-sm);
  cursor:pointer;
  display:flex;align-items:center;justify-content:center;
  transition:border-color .15s;
  height:100px;
}
.work-thumb.active{border-color:var(--accent)}
.work-thumb:hover{border-color:var(--text-secondary)}

.overview-workspaces{
  display:flex;align-items:center;justify-content:center;gap:12px;
  overflow-y:auto;flex-wrap:wrap;align-content:center;
}
.overview-workspace-card{
  width:260px;height:150px;
  background:var(--bg-window);
  border:2px solid var(--border);
  border-radius:var(--radius-sm);
  position:relative;overflow:hidden;
  cursor:pointer;
  transition:border-color .15s,transform .15s;
}
.overview-workspace-card:hover{border-color:var(--accent)}
.overview-workspace-card.active{border-color:var(--accent)}
.overview-workspace-card .ws-thumb{
  position:absolute;inset:0;background:var(--bg-window-alt);
}
.overview-workspace-card .ws-close{
  position:absolute;top:4px;right:4px;
  width:18px;height:18px;border-radius:50%;
  background:rgba(0,0,0,.5);color:#fff;font-size:12px;
  display:flex;align-items:center;justify-content:center;
  opacity:0;
}
.overview-workspace-card:hover .ws-close{opacity:1}

.overview-title-row{
  position:absolute;top:6px;left:10px;color:#fff;font-weight:600;font-size:11px;
  text-shadow:0 1px 2px rgba(0,0,0,.4);
}

.overview-windows{
  display:flex;gap:8px;justify-content:center;flex-wrap:wrap;
  overflow-y:auto;max-height:110px;
  padding:6px;
}
.overview-window-thumb{
  width:120px;height:78px;
  background:var(--bg-window);
  border:1px solid var(--border);
  border-radius:6px;overflow:hidden;
  position:relative;cursor:pointer;
  transition:transform .15s,border-color .15s;
}
.overview-window-thumb:hover{border-color:var(--accent);transform:scale(1.04)}
.overview-window-thumb .thumb-content{position:absolute;inset:0;overflow:hidden;transform:scale(.25);transform-origin:top left;width:400%;height:400%;pointer-events:none}

.overview-dash{
  display:flex;justify-content:center;margin-bottom:6px;
}

/* App grid */
.app-grid-overlay{
  position:fixed;top:0;left:0;right:0;bottom:0;
  z-index:150;
  background:var(--bg-overlay);
  backdrop-filter:blur(10px);
  display:flex;flex-direction:column;
  padding:14px;
  overflow:hidden;
}
.app-grid-overlay.hidden{display:none}
.app-grid-header{
  display:flex;justify-content:space-between;align-items:center;
  margin-bottom:10px;gap:12px;
}
.app-grid-pages{
  display:flex;gap:4px;align-items:center;
}
.app-grid-pages .dot{
  width:8px;height:8px;border-radius:50%;
  background:var(--text-secondary);opacity:.4;cursor:pointer;
}
.app-grid-pages .dot.active{background:var(--accent);opacity:1}
.app-grid-search{
  background:rgba(20,12,16,.55);
  border:1px solid var(--border);
  border-radius:14px;
  display:flex;align-items:center;gap:6px;
  padding:4px 12px;min-width:220px;
}
[data-theme="light"] .app-grid-search{background:rgba(250,249,246,.7)}
.app-grid-search input{background:transparent;border:0;outline:none;flex:1;color:inherit;font-size:13px;padding:4px 0}
.app-grid-content{
  flex:1;overflow-y:auto;
  display:grid;
  grid-template-columns:repeat(auto-fill,110px);
  grid-auto-rows:104px;
  gap:6px;
  align-content:start;
  justify-content:center;
  padding:2px;
}
.app-card{
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  gap:5px;padding:8px;border-radius:10px;
  cursor:pointer;transition:background .15s;
  text-align:center;color:var(--text);
  width:100%;height:100%;box-sizing:border-box;
}
}
.app-card:hover{background:var(--bg-hover)}
.app-card .app-icon{width:48px;height:48px;flex-shrink:0;filter:drop-shadow(0 1px 2px rgba(0,0,0,.4))}
.app-card .app-name{font-size:11.5px;line-height:1.2;font-weight:500;word-wrap:break-word;max-width:100px}

.folder-grid{
  grid-template-columns:repeat(auto-fill,96px);
  padding:14px;
}
