/* ═══ TRAY ICON FRAMEWORK ═══ */

/* Visible icons area */
.tray-visible{display:flex;align-items:center;gap:1px;height:100%}
.tray-icon{display:flex;align-items:center;justify-content:center;min-width:24px;height:100%;padding:0 5px;
  font-size:11px;font-weight:600;color:var(--fg2);cursor:pointer;border-radius:var(--Rsm);
  transition:background .1s;position:relative;user-select:none;letter-spacing:.3px;line-height:1}
.tray-icon:hover{background:var(--hov);color:var(--fg)}
.tray-icon svg{width:15px;height:15px}
.tray-badge{position:absolute;top:2px;right:0;background:var(--err,#e94560);color:#fff;font-size:7px;
  border-radius:50%;min-width:10px;height:10px;text-align:center;line-height:10px;padding:0 2px;font-weight:700}

/* Overflow popup (^ chevron) */
.tray-overflow-popup{display:none;position:fixed;bottom:52px;z-index:9998;
  background:color-mix(in srgb,var(--surface) 92%,transparent);backdrop-filter:blur(40px) saturate(1.8);
  border:1px solid color-mix(in srgb,var(--fg) 8%,transparent);border-radius:10px;
  box-shadow:0 8px 40px rgba(0,0,0,.18),0 2px 8px rgba(0,0,0,.08);
  padding:8px 0;min-width:200px;max-width:280px;animation:trayPopIn .15s cubic-bezier(.16,1,.3,1)}
@keyframes trayPopIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.tray-overflow-hdr{display:flex;align-items:center;justify-content:space-between;padding:8px 14px 6px;font-size:12px;font-weight:600;color:var(--fg2)}
.tray-overflow-hdr .tray-settings-gear{cursor:pointer;padding:2px 6px;border-radius:var(--Rsm);color:var(--fg3)}
.tray-overflow-hdr .tray-settings-gear:hover{background:var(--hov);color:var(--fg)}
.tray-overflow-sep{height:1px;background:color-mix(in srgb,var(--fg) 6%,transparent);margin:4px 10px}
.tray-overflow-list{padding:2px 4px}
.tray-overflow-item{display:flex;align-items:center;gap:10px;padding:7px 12px;border-radius:var(--Rsm);
  cursor:pointer;font-size:12px;color:var(--fg2);transition:background .1s;user-select:none}
.tray-overflow-item:hover{background:var(--hov);color:var(--fg)}
.tray-overflow-ico{display:flex;align-items:center;justify-content:center;min-width:20px;font-size:12px;font-weight:600}
.tray-overflow-ico svg{width:15px;height:15px}
.tray-overflow-lbl{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.tray-overflow-empty{padding:12px 14px;font-size:11px;color:var(--fg3);text-align:center}

/* Context menu (right-click) */
.tray-ctx{display:none;position:fixed;z-index:10001;
  background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(30px) saturate(1.6);
  border:1px solid color-mix(in srgb,var(--fg) 10%,transparent);border-radius:8px;
  box-shadow:0 6px 24px rgba(0,0,0,.2),0 1px 4px rgba(0,0,0,.08);
  padding:4px 0;min-width:160px;animation:trayPopIn .12s cubic-bezier(.16,1,.3,1)}
.tray-ctx-item{display:flex;align-items:center;gap:8px;padding:7px 14px;font-size:12px;color:var(--fg);cursor:pointer;transition:background .08s}
.tray-ctx-item:hover{background:var(--hov)}
.tray-ctx-item.disabled{opacity:.4;cursor:default;pointer-events:none}
.tray-ctx-item.checked{font-weight:600}
.tray-ctx-check{color:var(--accent);font-size:11px;width:14px}
.tray-ctx-sep{height:1px;background:color-mix(in srgb,var(--fg) 6%,transparent);margin:3px 8px}

/* Settings popup (select which icons appear) */
.tray-settings-popup{display:none;position:fixed;bottom:52px;z-index:9999;
  background:color-mix(in srgb,var(--surface) 94%,transparent);backdrop-filter:blur(40px) saturate(1.8);
  border:1px solid color-mix(in srgb,var(--fg) 8%,transparent);border-radius:10px;
  box-shadow:0 8px 40px rgba(0,0,0,.18);padding:0;min-width:260px;max-width:320px;
  animation:trayPopIn .15s cubic-bezier(.16,1,.3,1)}
.tray-settings-hdr{padding:14px 16px 8px;font-size:13px;font-weight:600;color:var(--fg)}
.tray-settings-desc{padding:0 16px 10px;font-size:11px;color:var(--fg3);line-height:1.4}
.tray-settings-list{padding:4px 8px 8px}
.tray-settings-row{display:flex;align-items:center;gap:10px;padding:8px 10px;border-radius:var(--Rsm);transition:background .1s}
.tray-settings-row:hover{background:var(--hov)}
.tray-settings-ico{display:flex;align-items:center;justify-content:center;min-width:20px;font-size:12px;font-weight:600;color:var(--fg2)}
.tray-settings-ico svg{width:15px;height:15px}
.tray-settings-name{flex:1;font-size:12px;color:var(--fg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
