/* ============================================================
   ALPHAVAULT DRIVE — drive.css v2.0
   Aligné 100% sur le design system Deal Sourcing (monochrome ink)
   Full dark/light responsive — Classes avd- conservées à l'identique
   ============================================================ */

/* ════════════════════════════════════════════════════════════
   1. CSS VARIABLES — MONOCHROME INK SYSTEM
════════════════════════════════════════════════════════════ */
:root {
  /* Ink scale */
  --avd-ink:            #fafafa;
  --avd-ink-soft:       #d4d4d4;

  /* Backgrounds */
  --avd-bg:             #0a0a0a;
  --avd-sidebar-bg:     #0a0a0a;
  --avd-header-bg:      rgba(10, 10, 10, 0.97);
  --avd-card:           #0f0f0f;
  --avd-card-hover:     #171717;
  --avd-input-bg:       #141414;
  --avd-surface-2:      #141414;

  /* Borders */
  --avd-border:         #262626;
  --avd-border-soft:    #171717;
  --avd-border-hover:   #404040;

  /* Text */
  --avd-text:           #fafafa;
  --avd-text-muted:     #a3a3a3;
  --avd-text-dim:       #737373;
  --avd-text-faint:     #525252;

  /* Accents — tout ramené à l'ink (monochrome strict) */
  --avd-primary:        #fafafa;
  --avd-primary-dark:   #d4d4d4;
  --avd-green:          #fafafa;
  --avd-amber:          #fafafa;
  --avd-purple:         #fafafa;

  /* Seule couleur conservée : danger */
  --avd-red:            #ef4444;
  --avd-red-bg:         rgba(239, 68, 68, 0.12);

  /* Radii */
  --avd-radius:         6px;
  --avd-radius-lg:      10px;
  --avd-radius-xl:      14px;

  /* Shadows — neutres, pas de glow coloré */
  --avd-shadow:         0 4px 12px rgba(0,0,0,0.35);
  --avd-shadow-lg:      0 12px 32px rgba(0,0,0,0.55);

  /* Layout */
  --avd-sidebar-w:      260px;
  --avd-panel-w:        300px;
  --avd-header-h:       58px;

  --avd-transition:     all 0.15s ease;
}

/* ── Light mode overrides ─────────────────────────────────── */
body.light-mode {
  --avd-ink:            #0a0a0a;
  --avd-ink-soft:       #404040;

  --avd-bg:             #fafafa;
  --avd-sidebar-bg:     #ffffff;
  --avd-header-bg:      rgba(255, 255, 255, 0.97);
  --avd-card:           #ffffff;
  --avd-card-hover:     #fafafa;
  --avd-input-bg:       #ffffff;
  --avd-surface-2:      #fafafa;

  --avd-border:         #e5e5e5;
  --avd-border-soft:    #f5f5f5;
  --avd-border-hover:   #d4d4d4;

  --avd-text:           #0a0a0a;
  --avd-text-muted:     #525252;
  --avd-text-dim:       #a3a3a3;
  --avd-text-faint:     #a3a3a3;

  --avd-primary:        #0a0a0a;
  --avd-primary-dark:   #262626;
  --avd-green:          #0a0a0a;
  --avd-amber:          #0a0a0a;
  --avd-purple:         #0a0a0a;

  --avd-red:            #dc2626;
  --avd-red-bg:         #fef2f2;

  --avd-shadow:         0 1px 3px rgba(0,0,0,0.06);
  --avd-shadow-lg:      0 12px 32px rgba(0,0,0,0.10);
}

/* ════════════════════════════════════════════════════════════
   2. RESET & BASE
════════════════════════════════════════════════════════════ */
*, *::before, *::after {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}

html, body {
  height: 100%;
  overflow: hidden;
}

body.avd-page {
  font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
  background: var(--avd-bg);
  color: var(--avd-text);
  font-size: 13px;
  -webkit-font-smoothing: antialiased;
  line-height: 1.5;
  transition: background .2s ease, color .2s ease;
}

a { color: inherit; text-decoration: none; }
button { font-family: inherit; }

body.avd-page:not(.light-mode) * {
  color: inherit;
}

/* ════════════════════════════════════════════════════════════
   3. APP LAYOUT
════════════════════════════════════════════════════════════ */
#avDriveApp {
  display: flex;
  height: 100vh;
  overflow: hidden;
  position: relative;
}

/* ── SIDEBAR ────────────────────────────────────────────── */
#avdSidebar {
  width: var(--avd-sidebar-w);
  flex-shrink: 0;
  background: var(--avd-sidebar-bg);
  border-right: 1px solid var(--avd-border);
  display: flex;
  flex-direction: column;
  height: 100vh;
  overflow: visible;
  position: relative;
  z-index: 200;
  transition: width 0.25s ease, transform 0.3s ease, background .2s ease, border-color .2s ease;
}

body.light-mode #avdSidebar {
  box-shadow: 2px 0 20px rgba(0,0,0,0.05);
}

#avdSidebar.collapsed {
  width: 64px;
}
#avdSidebar.collapsed .avd-nav-item-text,
#avdSidebar.collapsed .avd-nav-badge,
#avdSidebar.collapsed .avd-nav-label,
#avdSidebar.collapsed .avd-new-btn-text,
#avdSidebar.collapsed .avd-storage-meter,
#avdSidebar.collapsed .avd-platform-nav,
#avdSidebar.collapsed .avd-sidebar-user-trigger > div,
#avdSidebar.collapsed #avdUserPlan,
#avdSidebar.collapsed #avdUserChevron {
  display: none;
}
#avdSidebar.collapsed .avd-nav-item {
  justify-content: center;
  padding: 10px;
}
#avdSidebar.collapsed .avd-nav-item-icon { margin: 0; }
#avdSidebar.collapsed .avd-new-btn {
  justify-content: center;
  padding: 10px;
  min-width: 0;
}

#avdSidebar.collapsed #avdNavSheetFolders,
#avdSidebar.collapsed #avdNavSlideFolders {
      display: none;
  }

  #avdSidebar.collapsed .avd-nav-section:has(#avdNavSheetFolders),
  #avdSidebar.collapsed .avd-nav-section:has(#avdNavSlideFolders) {
      display: none;
  }

  #avdSidebar.collapsed #avdNavSheetSection,
  #avdSidebar.collapsed #avdNavSlideSection,
  #avdSidebar.collapsed #avdNavSheetFolders,
  #avdSidebar.collapsed #avdNavSlideFolders {
      display: none !important;
  }

.avd-sidebar-logo-text { display: block; }
.avd-sidebar-logo-icon  { display: none;  }

#avdSidebar.collapsed .avd-sidebar-logo-text { display: none; }
#avdSidebar.collapsed .avd-sidebar-logo-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 14px 0 10px;
  width: 100%;
}

.avd-sidebar-scroll {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
}
.avd-sidebar-scroll::-webkit-scrollbar { width: 3px; }
.avd-sidebar-scroll::-webkit-scrollbar-thumb {
  background: var(--avd-border);
  border-radius: 4px;
}

/* ── Sidebar collapse toggle button ──────────────────────── */
.avd-sidebar-toggle {
  position: absolute;
  right: -14px;
  top: 50%;
  transform: translateY(-50%);
  width: 26px;
  height: 26px;
  border-radius: 50%;
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: var(--avd-text-muted);
  font-size: 9px;
  z-index: 300;
  transition: var(--avd-transition);
  box-shadow: var(--avd-shadow);
  flex-shrink: 0;
}
.avd-sidebar-toggle:hover {
  background: var(--avd-ink);
  color: var(--avd-bg);
  border-color: var(--avd-ink);
}

/* ── MAIN ──────────────────────────────────────────────── */
#avdMain {
  flex: 1;
  display: flex;
  flex-direction: column;
  height: 100vh;
  overflow: hidden;
  min-width: 0;
  transition: margin-left 0.25s ease;
}

/* ── DETAILS PANEL ──────────────────────────────────────── */
#avdDetailsPanel {
  width: 0;
  flex-shrink: 0;
  background: var(--avd-sidebar-bg);
  border-left: 1px solid var(--avd-border);
  height: 100vh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  transition: width 0.25s ease;
}
#avdDetailsPanel.open {
  width: var(--avd-panel-w);
  overflow-y: auto;
}
body.light-mode #avdDetailsPanel {
  box-shadow: -2px 0 20px rgba(0,0,0,0.05);
}

/* ════════════════════════════════════════════════════════════
   4. HEADER
════════════════════════════════════════════════════════════ */
#avDriveHeader {
  height: var(--avd-header-h);
  background: var(--avd-header-bg);
  border-bottom: 1px solid var(--avd-border);
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 0 18px;
  flex-shrink: 0;
  backdrop-filter: blur(10px);
  position: relative;
  z-index: 100;
}

/* ── Breadcrumb ──────────────────────────────────────────── */
.avd-breadcrumb {
  display: flex;
  align-items: center;
  gap: 6px;
  flex-shrink: 0;
}
.avd-breadcrumb-item {
  font-size: 12px;
  font-weight: 700;
  color: var(--avd-text-dim);
  cursor: pointer;
  transition: color 0.15s;
  white-space: nowrap;
}
.avd-breadcrumb-item:hover { color: var(--avd-text); }
.avd-breadcrumb-item.active { color: var(--avd-text); }
.avd-breadcrumb-sep { font-size: 9px; color: var(--avd-text-dim); }

/* ── Search ──────────────────────────────────────────────── */
.avd-search-wrap {
  flex: 1;
  max-width: 420px;
  position: relative;
  display: flex;
  align-items: center;
}
.avd-search-icon {
  position: absolute;
  left: 12px;
  color: var(--avd-text-dim);
  font-size: 12px;
  pointer-events: none;
  z-index: 1;
}
.avd-search-input {
  width: 100%;
  background: var(--avd-input-bg);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius);
  padding: 8px 36px 8px 34px;
  font-family: inherit;
  font-size: 12px;
  color: var(--avd-text);
  outline: none;
  transition: var(--avd-transition);
}
.avd-search-input::placeholder { color: var(--avd-text-faint); }
.avd-search-input:focus {
  border-color: var(--avd-ink);
}
.avd-search-clear {
  position: absolute;
  right: 10px;
  color: var(--avd-text-dim);
  cursor: pointer;
  font-size: 11px;
  transition: color 0.15s;
}
.avd-search-clear:hover { color: var(--avd-red); }
.avd-search-dropdown {
  position: absolute;
  top: calc(100% + 8px);
  left: 0; right: 0;
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-lg);
  padding: 6px;
  z-index: 2000;
  box-shadow: var(--avd-shadow-lg);
  display: none;
}

/* ── Header controls ─────────────────────────────────────── */
.avd-header-controls {
  display: flex;
  align-items: center;
  gap: 6px;
  margin-left: auto;
  flex-shrink: 0;
}

/* Filter tabs */
.avd-filter-tabs {
  display: flex;
  gap: 2px;
  background: var(--avd-border-soft);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius);
  padding: 3px;
}
.avd-filter-tab {
  padding: 5px 12px;
  font-size: 11px;
  font-weight: 700;
  color: var(--avd-text-muted);
  border-radius: var(--avd-radius);
  cursor: pointer;
  transition: var(--avd-transition);
  white-space: nowrap;
}
.avd-filter-tab.active { background: var(--avd-ink); color: var(--avd-bg); }
.avd-filter-tab:not(.active):hover { color: var(--avd-text); }

/* Sort */
.avd-sort-wrap { position: relative; }
.avd-sort-dropdown {
  display: none;
  position: absolute;
  top: calc(100% + 8px);
  right: 0;
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-lg);
  padding: 6px;
  min-width: 190px;
  z-index: 2000;
  box-shadow: var(--avd-shadow-lg);
}
.avd-sort-dropdown.open { display: block; }
.avd-sort-option {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  font-size: 12px;
  font-weight: 600;
  color: var(--avd-text-muted);
  border-radius: var(--avd-radius);
  cursor: pointer;
  transition: var(--avd-transition);
}
.avd-sort-option i { font-size: 12px; width: 14px; text-align: center; }
.avd-sort-option:hover { background: var(--avd-border-soft); color: var(--avd-text); }
.avd-sort-option.active { color: var(--avd-text); background: var(--avd-border-soft); font-weight: 700; }

/* View toggle */
.avd-view-toggle {
  display: flex;
  background: var(--avd-border-soft);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius);
  overflow: hidden;
}
.avd-view-btn {
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  color: var(--avd-text-muted);
  font-size: 13px;
  border: none;
  background: transparent;
  transition: var(--avd-transition);
}
.avd-view-btn.active { background: var(--avd-ink); color: var(--avd-bg); }
.avd-view-btn:not(.active):hover {
  background: var(--avd-card-hover);
  color: var(--avd-text);
}

/* Header button */
.avd-header-btn {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 7px 12px;
  background: var(--avd-border-soft);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius);
  font-family: inherit;
  font-size: 12px;
  font-weight: 600;
  color: var(--avd-text-muted);
  cursor: pointer;
  transition: var(--avd-transition);
  white-space: nowrap;
}
.avd-header-btn:hover {
  border-color: var(--avd-ink-soft);
  color: var(--avd-text);
}

/* Theme toggle */
.avd-theme-toggle {
  width: 34px;
  height: 34px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--avd-border-soft);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius);
  cursor: pointer;
  color: var(--avd-text-muted);
  font-size: 14px;
  transition: var(--avd-transition);
  flex-shrink: 0;
}
.avd-theme-toggle:hover {
  border-color: var(--avd-ink-soft);
  color: var(--avd-text);
}

/* Status dot */
.avd-status-dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--avd-text-faint);
  transition: var(--avd-transition);
  flex-shrink: 0;
}
.avd-status-dot.connected  { background: var(--avd-text); }
.avd-status-dot.syncing    { background: var(--avd-text-muted); animation: pulseDot 1s infinite; }
.avd-status-dot.error      { background: var(--avd-red); }
@keyframes pulseDot {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.3; }
}

/* ════════════════════════════════════════════════════════════
   5. SIDEBAR NAV
════════════════════════════════════════════════════════════ */
.avd-nav { padding: 4px 8px; }

.avd-nav-section { margin-bottom: 6px; }

.avd-nav-label {
  padding: 10px 10px 5px;
  font-size: 9px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 1.4px;
  color: var(--avd-text-faint);
}

.avd-nav-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 10px;
  border-radius: var(--avd-radius);
  cursor: pointer;
  transition: var(--avd-transition);
  color: var(--avd-text-muted);
  position: relative;
  margin-bottom: 2px;
}
.avd-nav-item:hover {
  background: var(--avd-border-soft);
  color: var(--avd-text);
}
.avd-nav-item.active {
  background: var(--avd-ink);
  color: var(--avd-bg);
}
.avd-nav-item.active .avd-nav-item-icon,
.avd-nav-item.active .avd-nav-badge { color: var(--avd-bg); }
.avd-nav-item-icon {
  width: 20px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  flex-shrink: 0;
}
.avd-nav-item-text {
  flex: 1;
  font-size: 12px;
  font-weight: 700;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.avd-nav-badge {
  font-size: 9px;
  font-weight: 800;
  padding: 2px 7px;
  border-radius: var(--avd-radius-xl);
  background: var(--avd-border-soft);
  color: var(--avd-text);
  border: 1px solid var(--avd-border);
  min-width: 22px;
  text-align: center;
  flex-shrink: 0;
}
.avd-nav-subfolder {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px 6px 30px;
  font-size: 11px;
  font-weight: 600;
  color: var(--avd-text-dim);
  border-radius: var(--avd-radius);
  cursor: pointer;
  transition: var(--avd-transition);
  margin-bottom: 1px;
}
.avd-nav-subfolder:hover {
  background: var(--avd-border-soft);
  color: var(--avd-text-muted);
}

/* ════════════════════════════════════════════════════════════
   6. PLATFORM NAV (sidebar)
════════════════════════════════════════════════════════════ */
.avd-platform-nav { padding: 0 0 8px; }

.avd-platform-section { margin-bottom: 1px; }

.avd-platform-folder {
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 8px 10px;
  font-size: 12px;
  font-weight: 700;
  color: var(--avd-text-muted);
  cursor: pointer;
  border-radius: var(--avd-radius);
  margin: 0 8px;
  transition: var(--avd-transition);
  position: relative;
  background: none;
  border: none;
  width: calc(100% - 16px);
  text-align: left;
}
.avd-platform-folder:hover {
  background: var(--avd-border-soft);
  color: var(--avd-text);
}
.avd-platform-folder i:first-child {
  font-size: 13px;
  width: 16px;
  text-align: center;
}
.avd-platform-folder .arrow {
  margin-left: auto;
  font-size: 9px;
  transition: transform 0.2s;
}
.avd-platform-folder.open .arrow { transform: rotate(180deg); }

.avd-platform-submenu { display: none; padding: 2px 0; }
.avd-platform-submenu.open { display: block; }

.avd-platform-link {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 10px 6px 36px;
  font-size: 11px;
  font-weight: 500;
  color: var(--avd-text-dim);
  text-decoration: none;
  border-radius: var(--avd-radius);
  margin: 0 8px;
  transition: var(--avd-transition);
}
.avd-platform-link:hover {
  background: var(--avd-border-soft);
  color: var(--avd-text-muted);
}
.avd-platform-link.active {
  color: var(--avd-text);
  background: var(--avd-border-soft);
  font-weight: 700;
}
.avd-platform-link i {
  font-size: 11px;
  width: 14px;
  text-align: center;
}
.avd-platform-divider {
  border: none;
  border-top: 1px solid var(--avd-border-soft);
  margin: 8px 16px;
}

.nav-badge-pill {
  font-size: 8px;
  font-weight: 800;
  padding: 1px 6px;
  border-radius: var(--avd-radius-xl);
  background: var(--avd-border-soft);
  color: var(--avd-text);
  border: 1px solid var(--avd-border);
  margin-left: auto;
}

/* ════════════════════════════════════════════════════════════
   7. NEW BUTTON & DROPDOWN
════════════════════════════════════════════════════════════ */
.avd-new-btn {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 14px;
  background: var(--avd-ink);
  border: none;
  border-radius: var(--avd-radius-lg);
  font-family: inherit;
  font-size: 13px;
  font-weight: 800;
  color: var(--avd-bg) !important;
  cursor: pointer;
  transition: var(--avd-transition);
}
.avd-new-btn:hover {
  opacity: 0.85;
}
.avd-new-btn-text { flex: 1; text-align: left; }

.avd-new-dropdown {
  display: none;
  position: absolute;
  top: calc(100% + 6px);
  left: 10px;
  right: 10px;
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-lg);
  padding: 8px;
  z-index: 600;
  box-shadow: var(--avd-shadow-lg);
}
.avd-new-dropdown.open { display: block; }

.avd-new-drop-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 10px 12px;
  border-radius: var(--avd-radius);
  cursor: pointer;
  transition: var(--avd-transition);
}
.avd-new-drop-item:hover { background: var(--avd-border-soft); }

.avd-new-drop-icon {
  width: 36px;
  height: 36px;
  border-radius: var(--avd-radius);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  background: var(--avd-border-soft);
  border: 1px solid var(--avd-border);
  color: var(--avd-text);
}

.avd-new-drop-divider {
  border: none;
  border-top: 1px solid var(--avd-border-soft);
  margin: 4px 0;
}

/* ════════════════════════════════════════════════════════════
   8. STORAGE METER
════════════════════════════════════════════════════════════ */
.avd-storage-meter {
  padding: 12px 14px;
  border-top: 1px solid var(--avd-border-soft);
  flex-shrink: 0;
}
.avd-storage-label {
  display: flex;
  justify-content: space-between;
  font-size: 10px;
  font-weight: 700;
  color: var(--avd-text-muted);
  margin-bottom: 7px;
}
.avd-storage-bar {
  height: 4px;
  background: var(--avd-border);
  border-radius: 4px;
  overflow: hidden;
}
.avd-storage-fill {
  height: 100%;
  background: var(--avd-ink);
  border-radius: 4px;
  transition: width 0.5s ease;
}
.avd-storage-info {
  font-size: 9px;
  color: var(--avd-text-faint);
  margin-top: 5px;
}

/* ════════════════════════════════════════════════════════════
   9. CONTENT AREA
════════════════════════════════════════════════════════════ */
#avDriveContent {
  flex: 1;
  overflow-y: auto;
  overflow-x: hidden;
  padding: 22px 26px;
}
#avDriveContent::-webkit-scrollbar { width: 5px; }
#avDriveContent::-webkit-scrollbar-thumb {
  background: var(--avd-border);
  border-radius: 4px;
}

.avd-view { display: none; }
.avd-view.active {
  display: block;
  animation: avdFadeIn 0.2s ease;
}
@keyframes avdFadeIn {
  from { opacity: 0; transform: translateY(6px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Section title */
.avd-section-title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 800;
  color: var(--avd-text);
  margin-bottom: 14px;
  margin-top: 26px;
}
.avd-section-title:first-child { margin-top: 0; }
.avd-section-title i { color: var(--avd-text-muted); font-size: 13px; }

/* Shared header */
.avd-shared-header {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 13px;
  font-weight: 800;
  color: var(--avd-text);
  margin-bottom: 14px;
}

/* ════════════════════════════════════════════════════════════
   10. HOME VIEW
════════════════════════════════════════════════════════════ */
.avd-home-hero {
  background: var(--avd-border-soft);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-xl);
  padding: 28px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 24px;
  flex-wrap: wrap;
}
.avd-home-hero-text h2 {
  font-size: 22px;
  font-weight: 900;
  color: var(--avd-text);
  margin-bottom: 6px;
  line-height: 1.3;
  letter-spacing: -0.01em;
}
.avd-home-hero-text p {
  font-size: 13px;
  color: var(--avd-text-muted);
}
.avd-home-hero-actions {
  display: flex;
  gap: 10px;
  flex-shrink: 0;
  flex-wrap: wrap;
}

/* Stats grid */
.avd-stats-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 14px;
  margin-bottom: 24px;
}
.avd-stat-card {
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-lg);
  padding: 16px 18px;
  display: flex;
  align-items: center;
  gap: 14px;
  transition: var(--avd-transition);
  box-shadow: var(--avd-shadow);
}
.avd-stat-card:hover {
  border-color: var(--avd-ink-soft);
}
.avd-stat-icon {
  width: 44px;
  height: 44px;
  border-radius: var(--avd-radius);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  flex-shrink: 0;
  background: var(--avd-border-soft);
  color: var(--avd-text);
}
.avd-stat-value {
  font-size: 22px;
  font-weight: 900;
  color: var(--avd-text);
}
.avd-stat-label {
  font-size: 10px;
  color: var(--avd-text-muted);
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  margin-top: 2px;
}

/* Quick access */
.avd-quick-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(175px, 1fr));
  gap: 12px;
  margin-bottom: 24px;
}
.avd-quick-card {
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-lg);
  overflow: hidden;
  cursor: pointer;
  transition: var(--avd-transition);
}
.avd-quick-card:hover {
  border-color: var(--avd-ink-soft);
  transform: translateY(-2px);
  box-shadow: var(--avd-shadow);
}
.avd-quick-card-thumb {
  height: 88px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 30px;
  background: var(--avd-border-soft);
  color: var(--avd-text-muted);
}
.avd-quick-card-name {
  font-size: 11px;
  font-weight: 700;
  color: var(--avd-text);
  padding: 8px 10px 2px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.avd-quick-card-meta {
  font-size: 10px;
  color: var(--avd-text-faint);
  padding: 0 10px 9px;
}

/* Activity feed */
.avd-activity-feed {
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-lg);
  overflow: hidden;
}
.avd-activity-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 16px;
  border-bottom: 1px solid var(--avd-border-soft);
  font-size: 12px;
  font-weight: 800;
  color: var(--avd-text);
}
.avd-activity-item {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 11px 16px;
  cursor: pointer;
  transition: var(--avd-transition);
  border-bottom: 1px solid var(--avd-border-soft);
}
.avd-activity-item:last-child { border-bottom: none; }
.avd-activity-item:hover { background: var(--avd-border-soft); }
.avd-activity-icon {
  width: 34px;
  height: 34px;
  border-radius: var(--avd-radius);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 14px;
  flex-shrink: 0;
  background: var(--avd-border-soft);
  color: var(--avd-text);
}
.avd-activity-info { flex: 1; min-width: 0; }
.avd-activity-name {
  font-size: 12px;
  font-weight: 700;
  color: var(--avd-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.avd-activity-action { font-size: 10px; color: var(--avd-text-muted); margin-top: 2px; }
.avd-activity-time { font-size: 10px; color: var(--avd-text-faint); flex-shrink: 0; }

/* ════════════════════════════════════════════════════════════
   11. FILE CARDS (Grid view)
════════════════════════════════════════════════════════════ */
.avd-file-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
  gap: 14px;
}
.avd-file-card {
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-lg);
  overflow: hidden;
  cursor: pointer;
  transition: var(--avd-transition);
  position: relative;
  box-shadow: var(--avd-shadow);
}
.avd-file-card:hover {
  border-color: var(--avd-ink-soft);
  transform: translateY(-2px);
}
.avd-file-card.selected {
  border-color: var(--avd-ink);
  background: var(--avd-border-soft);
}

.avd-file-card-thumb {
  height: 100px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  background: var(--avd-border-soft);
  color: var(--avd-text-muted);
}

.avd-file-card-check {
  position: absolute;
  top: 8px;
  left: 8px;
  width: 20px;
  height: 20px;
  border-radius: 6px;
  background: var(--avd-ink);
  border: 2px solid var(--avd-ink);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 10px;
  color: var(--avd-bg);
  opacity: 0;
  transition: var(--avd-transition);
  cursor: pointer;
  z-index: 2;
}
.avd-file-card:hover .avd-file-card-check,
.avd-file-card.selected .avd-file-card-check { opacity: 1; }

.avd-file-card-fav {
  position: absolute;
  top: 8px;
  right: 8px;
  width: 24px;
  height: 24px;
  border-radius: 6px;
  background: rgba(0,0,0,0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  color: rgba(255,255,255,0.6);
  opacity: 0;
  transition: var(--avd-transition);
  cursor: pointer;
  z-index: 2;
}
.avd-file-card:hover .avd-file-card-fav { opacity: 1; }
.avd-file-card-fav.active { opacity: 1; color: #ffffff; }

.avd-file-card-body { padding: 10px 12px 6px; }
.avd-file-card-name {
  font-size: 12px;
  font-weight: 700;
  color: var(--avd-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  margin-bottom: 5px;
}
.avd-file-card-meta {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 10px;
  color: var(--avd-text-faint);
}
.avd-file-card-type {
  font-size: 9px;
  font-weight: 800;
  padding: 2px 7px;
  border-radius: var(--avd-radius-xl);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  background: var(--avd-border-soft);
  color: var(--avd-text-muted);
  border: 1px solid var(--avd-border);
}

.avd-file-card-actions {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 6px 10px 10px;
  opacity: 0;
  transition: var(--avd-transition);
  flex-wrap: wrap;
}
.avd-file-card:hover .avd-file-card-actions { opacity: 1; }

.avd-file-action-btn {
  display: flex;
  align-items: center;
  gap: 4px;
  padding: 4px 8px;
  border-radius: var(--avd-radius);
  border: 1px solid var(--avd-border);
  background: var(--avd-border-soft);
  color: var(--avd-text-muted);
  font-size: 10px;
  font-weight: 700;
  font-family: inherit;
  cursor: pointer;
  transition: var(--avd-transition);
}
.avd-file-action-btn:hover { border-color: var(--avd-ink-soft); color: var(--avd-text); }
.avd-file-action-btn.open {
  background: var(--avd-ink);
  color: var(--avd-bg);
  border-color: var(--avd-ink);
}
.avd-file-action-btn.open:hover { opacity: 0.85; }
.avd-file-action-btn.delete:hover {
  background: var(--avd-red-bg);
  color: var(--avd-red);
  border-color: var(--avd-red);
}

/* ════════════════════════════════════════════════════════════
   12. FILE LIST (List view)
════════════════════════════════════════════════════════════ */
.avd-file-list {
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-lg);
  overflow: hidden;
}
.avd-file-list-header {
  display: grid;
  grid-template-columns: 28px 1fr 120px 80px 80px 140px;
  gap: 8px;
  padding: 9px 16px;
  font-size: 10px;
  font-weight: 800;
  color: var(--avd-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.8px;
  border-bottom: 1px solid var(--avd-border);
  background: var(--avd-border-soft);
}
.avd-file-row {
  display: grid;
  grid-template-columns: 28px 1fr 120px 80px 80px 140px;
  gap: 8px;
  align-items: center;
  padding: 8px 16px;
  cursor: pointer;
  transition: var(--avd-transition);
  border-bottom: 1px solid var(--avd-border-soft);
}
.avd-file-row:last-child { border-bottom: none; }
.avd-file-row:hover { background: var(--avd-border-soft); }
.avd-file-row.selected { background: var(--avd-border-soft); }

.avd-file-row-check {
  width: 20px;
  height: 20px;
  border-radius: 5px;
  border: 1.5px solid var(--avd-border);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 9px;
  color: var(--avd-bg);
  cursor: pointer;
  transition: var(--avd-transition);
  flex-shrink: 0;
}
.avd-file-row:hover .avd-file-row-check { border-color: var(--avd-ink); }
.avd-file-row.selected .avd-file-row-check {
  background: var(--avd-ink);
  border-color: var(--avd-ink);
}
.avd-file-row-name {
  display: flex;
  align-items: center;
  gap: 10px;
  min-width: 0;
}
.avd-file-row-icon {
  width: 30px;
  height: 30px;
  border-radius: var(--avd-radius);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  font-size: 14px;
  background: var(--avd-border-soft);
  color: var(--avd-text-muted);
}
.avd-file-row-title {
  font-size: 12px;
  font-weight: 700;
  color: var(--avd-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.avd-file-row-cell {
  font-size: 11px;
  color: var(--avd-text-muted);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.avd-file-row-actions {
  display: flex;
  gap: 3px;
  opacity: 0;
  transition: var(--avd-transition);
}
.avd-file-row:hover .avd-file-row-actions { opacity: 1; }
.avd-file-row-btn {
  width: 26px;
  height: 26px;
  border-radius: var(--avd-radius);
  border: none;
  background: var(--avd-border-soft);
  color: var(--avd-text-muted);
  font-size: 11px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: var(--avd-transition);
}
.avd-file-row-btn:hover { color: var(--avd-text); }
.avd-file-row-btn.delete:hover {
  background: var(--avd-red-bg);
  color: var(--avd-red);
}

/* ════════════════════════════════════════════════════════════
   13. FOLDER CARDS
════════════════════════════════════════════════════════════ */
.avd-folder-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(175px, 1fr));
  gap: 12px;
  margin-bottom: 22px;
}
.avd-folder-card {
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-lg);
  padding: 14px;
  cursor: pointer;
  transition: var(--avd-transition);
  display: flex;
  flex-direction: column;
  gap: 6px;
  position: relative;
}
.avd-folder-card:hover {
  border-color: var(--avd-ink-soft);
  transform: translateY(-2px);
}
.avd-folder-icon { font-size: 28px; margin-bottom: 2px; color: var(--avd-text); }
.avd-folder-info { flex: 1; min-width: 0; }
.avd-folder-name {
  font-size: 12px;
  font-weight: 800;
  color: var(--avd-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.avd-folder-meta { font-size: 10px; color: var(--avd-text-faint); margin-top: 2px; }
.avd-folder-actions {
  display: flex;
  gap: 4px;
  opacity: 0;
  transition: var(--avd-transition);
  margin-top: 4px;
}
.avd-folder-card:hover .avd-folder-actions { opacity: 1; }
.avd-folder-action-btn {
  width: 26px;
  height: 26px;
  border-radius: var(--avd-radius);
  border: 1px solid var(--avd-border);
  background: var(--avd-border-soft);
  color: var(--avd-text-muted);
  font-size: 11px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: var(--avd-transition);
}
.avd-folder-action-btn:hover { color: var(--avd-text); border-color: var(--avd-ink-soft); }
.avd-folder-action-btn.delete:hover {
  background: var(--avd-red-bg);
  color: var(--avd-red);
  border-color: var(--avd-red);
}

/* ════════════════════════════════════════════════════════════
   14. DETAILS PANEL
════════════════════════════════════════════════════════════ */
.avd-panel-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 15px 18px;
  border-bottom: 1px solid var(--avd-border);
  flex-shrink: 0;
}
.avd-panel-title { font-size: 13px; font-weight: 800; color: var(--avd-text); }
.avd-panel-close {
  width: 28px;
  height: 28px;
  border-radius: var(--avd-radius);
  border: 1px solid var(--avd-border);
  background: var(--avd-border-soft);
  color: var(--avd-text-muted);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  transition: var(--avd-transition);
}
.avd-panel-close:hover { background: var(--avd-red-bg); color: var(--avd-red); border-color: var(--avd-red); }

.avd-panel-tabs {
  display: flex;
  border-bottom: 1px solid var(--avd-border);
  flex-shrink: 0;
}
.avd-panel-tab {
  flex: 1;
  padding: 10px 6px;
  text-align: center;
  font-size: 11px;
  font-weight: 700;
  color: var(--avd-text-faint);
  cursor: pointer;
  transition: var(--avd-transition);
  border-bottom: 2px solid transparent;
  white-space: nowrap;
}
.avd-panel-tab:hover { color: var(--avd-text-muted); }
.avd-panel-tab.active { color: var(--avd-text); border-bottom-color: var(--avd-ink); font-weight: 800; }

.avd-panel-body { flex: 1; overflow-y: auto; }
.avd-panel-tab-content { display: none; }
.avd-panel-tab-content.active { display: block; }

.avd-panel-actions {
  display: flex;
  gap: 8px;
  padding: 12px 16px;
  border-top: 1px solid var(--avd-border);
  flex-shrink: 0;
}
.avd-panel-action-btn {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 10px;
  border-radius: var(--avd-radius);
  border: 1px solid var(--avd-border);
  background: var(--avd-border-soft);
  color: var(--avd-text-muted);
  font-size: 11px;
  font-weight: 700;
  font-family: inherit;
  cursor: pointer;
  transition: var(--avd-transition);
  flex: 1;
  justify-content: center;
}
.avd-panel-action-btn:hover { color: var(--avd-text); border-color: var(--avd-ink-soft); }
.avd-panel-action-btn.primary {
  background: var(--avd-ink);
  color: var(--avd-bg);
  border-color: var(--avd-ink);
}
.avd-panel-action-btn.primary:hover { opacity: 0.85; }

/* Details content */
.avd-details-thumb {
  height: 120px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: var(--avd-border-soft);
  color: var(--avd-text-muted);
}
.avd-details-section-title {
  font-size: 10px;
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.8px;
  color: var(--avd-text-faint);
  margin-bottom: 10px;
}
.avd-details-info-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 7px 0;
  border-bottom: 1px solid var(--avd-border-soft);
  gap: 8px;
}
.avd-details-info-row:last-child { border-bottom: none; }
.avd-details-label { font-size: 11px; font-weight: 600; color: var(--avd-text-muted); flex-shrink: 0; }
.avd-details-value { font-size: 11px; font-weight: 700; color: var(--avd-text); text-align: right; }

/* ════════════════════════════════════════════════════════════
   15. MULTI-SELECT BAR
════════════════════════════════════════════════════════════ */
.avd-select-bar {
  position: fixed;
  bottom: 24px;
  left: 50%;
  transform: translateX(-50%);
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-lg);
  padding: 10px 16px;
  display: flex;
  align-items: center;
  gap: 6px;
  z-index: 5000;
  box-shadow: var(--avd-shadow-lg);
  backdrop-filter: blur(10px);
  flex-wrap: wrap;
}
.avd-select-count {
  font-size: 12px;
  font-weight: 800;
  color: var(--avd-text);
  margin-right: 6px;
  white-space: nowrap;
}
.avd-select-action {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  border-radius: var(--avd-radius);
  border: 1px solid var(--avd-border);
  background: var(--avd-border-soft);
  color: var(--avd-text-muted);
  font-size: 11px;
  font-weight: 700;
  font-family: inherit;
  cursor: pointer;
  transition: var(--avd-transition);
  white-space: nowrap;
}
.avd-select-action:hover { color: var(--avd-text); border-color: var(--avd-ink-soft); }
.avd-select-action.danger:hover {
  background: var(--avd-red-bg);
  color: var(--avd-red);
  border-color: var(--avd-red);
}
.avd-select-close {
  width: 30px;
  height: 30px;
  border-radius: var(--avd-radius);
  border: 1px solid var(--avd-border);
  background: transparent;
  color: var(--avd-text-muted);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  margin-left: 4px;
  transition: var(--avd-transition);
}
.avd-select-close:hover { color: var(--avd-red); border-color: var(--avd-red); }

/* ════════════════════════════════════════════════════════════
   16. CONTEXT MENU
════════════════════════════════════════════════════════════ */
.avd-context-menu {
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-lg);
  padding: 6px;
  min-width: 210px;
  box-shadow: var(--avd-shadow-lg);
  z-index: 20000;
}
.avd-ctx-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 9px 12px;
  border-radius: var(--avd-radius);
  font-size: 12px;
  font-weight: 600;
  color: var(--avd-text-muted);
  cursor: pointer;
  transition: var(--avd-transition);
}
.avd-ctx-item:hover { background: var(--avd-border-soft); color: var(--avd-text); }
.avd-ctx-item.danger { color: var(--avd-red); }
.avd-ctx-item.danger:hover { background: var(--avd-red-bg); }
.avd-ctx-item i { font-size: 12px; width: 14px; text-align: center; }

/* ════════════════════════════════════════════════════════════
   17. MODALS
════════════════════════════════════════════════════════════ */
.avd-modal-overlay {
  position: fixed;
  inset: 0;
  background: rgba(0,0,0,0.5);
  backdrop-filter: blur(3px);
  z-index: 10000;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 16px;
}
.avd-modal {
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-xl);
  max-width: 440px;
  width: 100%;
  box-shadow: var(--avd-shadow-lg);
  overflow: hidden;
  max-height: 90vh;
  display: flex;
  flex-direction: column;
}
.avd-modal-lg { max-width: 580px; }

.avd-modal-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 18px 22px;
  border-bottom: 1px solid var(--avd-border);
  flex-shrink: 0;
}
.avd-modal-title {
  font-size: 15px;
  font-weight: 800;
  color: var(--avd-text);
  display: flex;
  align-items: center;
  gap: 10px;
}
.avd-modal-close {
  width: 30px;
  height: 30px;
  border-radius: var(--avd-radius);
  border: 1px solid var(--avd-border);
  background: var(--avd-border-soft);
  color: var(--avd-text-muted);
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  transition: var(--avd-transition);
}
.avd-modal-close:hover { background: var(--avd-red-bg); color: var(--avd-red); border-color: var(--avd-red); }
.avd-modal-body { padding: 20px 22px; overflow-y: auto; flex: 1; }
.avd-modal-footer {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  padding: 14px 22px;
  border-top: 1px solid var(--avd-border);
  flex-shrink: 0;
}

/* Form elements */
.avd-input-group { margin-bottom: 16px; }
.avd-input-label {
  display: block;
  font-size: 11px;
  font-weight: 800;
  color: var(--avd-text-muted);
  text-transform: uppercase;
  letter-spacing: 0.8px;
  margin-bottom: 8px;
}
.avd-input {
  width: 100%;
  background: var(--avd-input-bg);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius);
  padding: 10px 14px;
  font-family: inherit;
  font-size: 13px;
  color: var(--avd-text);
  outline: none;
  transition: var(--avd-transition);
}
.avd-input::placeholder { color: var(--avd-text-faint); }
.avd-input:focus {
  border-color: var(--avd-ink);
}
.avd-input option { background: var(--avd-card); color: var(--avd-text); }

/* Type selector */
.avd-type-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 10px;
}
.avd-type-card {
  background: var(--avd-border-soft);
  border: 2px solid var(--avd-border);
  border-radius: var(--avd-radius);
  padding: 16px 10px;
  text-align: center;
  cursor: pointer;
  transition: var(--avd-transition);
}
.avd-type-card:hover { border-color: var(--avd-ink-soft); }
.avd-type-card.active {
  border-color: var(--avd-ink);
  background: var(--avd-card);
}
.avd-type-icon {
  width: 52px;
  height: 52px;
  border-radius: var(--avd-radius);
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 10px;
  background: var(--avd-card);
  color: var(--avd-text);
  border: 1px solid var(--avd-border);
}
.avd-type-name { font-size: 12px; font-weight: 800; color: var(--avd-text); margin-bottom: 3px; }
.avd-type-desc { font-size: 10px; color: var(--avd-text-faint); line-height: 1.4; }

/* Color picker */
.avd-color-options { display: flex; gap: 8px; flex-wrap: wrap; }
.avd-color-opt {
  width: 28px;
  height: 28px;
  border-radius: var(--avd-radius);
  cursor: pointer;
  transition: var(--avd-transition);
  border: 3px solid transparent;
}
.avd-color-opt:hover { transform: scale(1.15); }
.avd-color-opt.active { border-color: var(--avd-ink); }

/* Drop zone */
.avd-drop-zone {
  border: 2px dashed var(--avd-border);
  border-radius: var(--avd-radius-lg);
  padding: 36px 24px;
  text-align: center;
  cursor: pointer;
  transition: var(--avd-transition);
  background: var(--avd-border-soft);
}
.avd-drop-zone:hover,
.avd-drop-zone.drag-over {
  border-color: var(--avd-ink);
  background: var(--avd-card);
}
.avd-drop-zone-icon { font-size: 36px; color: var(--avd-text); margin-bottom: 10px; }
.avd-drop-zone-text { font-size: 14px; font-weight: 800; color: var(--avd-text); margin-bottom: 4px; }
.avd-drop-zone-sub { font-size: 11px; color: var(--avd-text-faint); }

/* ════════════════════════════════════════════════════════════
   18. BUTTONS
════════════════════════════════════════════════════════════ */
.avd-btn {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 9px 18px;
  border-radius: var(--avd-radius);
  font-family: inherit;
  font-size: 12px;
  font-weight: 700;
  cursor: pointer;
  transition: var(--avd-transition);
  border: 1px solid transparent;
  text-decoration: none;
}
.avd-btn-primary {
  background: var(--avd-ink);
  color: var(--avd-bg) !important;
}
.avd-btn-primary:hover {
  opacity: 0.85;
}
.avd-btn-secondary {
  background: var(--avd-border-soft);
  border-color: var(--avd-border);
  color: var(--avd-text-muted);
}
.avd-btn-secondary:hover { color: var(--avd-text); border-color: var(--avd-ink-soft); }
.avd-btn-sm { padding: 5px 12px; font-size: 11px; }

/* ════════════════════════════════════════════════════════════
   19. BADGES
════════════════════════════════════════════════════════════ */
.avd-badge {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-size: 9px;
  font-weight: 800;
  width: 16px;
  height: 16px;
  border-radius: 50%;
}
.avd-badge-shared { background: var(--avd-border-soft); color: var(--avd-text); border: 1px solid var(--avd-border); }

/* ════════════════════════════════════════════════════════════
   20. EMPTY STATES & LOADING
════════════════════════════════════════════════════════════ */
.avd-empty {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 60px 24px;
  text-align: center;
  grid-column: 1 / -1;
}
.avd-empty-icon {
  font-size: 40px;
  color: var(--avd-text-faint);
  margin-bottom: 16px;
  display: block;
  opacity: 0.5;
}
.avd-empty-title {
  font-size: 15px;
  font-weight: 800;
  color: var(--avd-text-muted);
  margin-bottom: 6px;
}
.avd-empty-sub {
  font-size: 12px;
  color: var(--avd-text-faint);
  line-height: 1.5;
  margin-bottom: 20px;
}
.avd-spinner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 40px;
  color: var(--avd-text-muted);
  font-size: 12px;
  font-weight: 600;
}
.avd-spinner .fa-spinner { display: none !important; }
.avd-skeleton {
  background: linear-gradient(
    90deg,
    var(--avd-border-soft) 25%,
    var(--avd-card-hover) 50%,
    var(--avd-border-soft) 75%
  );
  background-size: 200% 100%;
  animation: shimmer 1.5s infinite;
  border-radius: var(--avd-radius-lg);
}
.avd-skeleton-card { height: 148px; }
@keyframes shimmer {
  0%   { background-position: 200% 0; }
  100% { background-position: -200% 0; }
}

/* ════════════════════════════════════════════════════════════
   21. SIDEBAR FOOTER
════════════════════════════════════════════════════════════ */
.avd-sidebar-footer {
  border-top: 1px solid var(--avd-border-soft);
  position: relative;
  flex-shrink: 0;
}

.avd-sidebar-user-trigger {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 14px;
  cursor: pointer;
  transition: var(--avd-transition);
}
.avd-sidebar-user-trigger:hover { background: var(--avd-border-soft); }

.avd-sidebar-user-dropdown {
  display: none;
  position: absolute;
  bottom: 100%;
  left: 0;
  right: 0;
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-lg);
  padding: 8px;
  margin: 0 8px 6px;
  box-shadow: var(--avd-shadow-lg);
  z-index: 1000;
}
.avd-sidebar-user-dropdown.open { display: block; }

.avd-sidebar-dropdown-header {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-bottom: 1px solid var(--avd-border-soft);
  margin-bottom: 6px;
}
.avd-sidebar-dropdown-header img {
  width: 38px;
  height: 38px;
  border-radius: 50%;
  object-fit: cover;
}
.avd-sidebar-dropdown-link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  color: var(--avd-text-muted);
  text-decoration: none;
  font-size: 12px;
  font-weight: 600;
  border-radius: var(--avd-radius);
  transition: var(--avd-transition);
}
.avd-sidebar-dropdown-link:hover {
  background: var(--avd-border-soft);
  color: var(--avd-text);
}
.avd-sidebar-dropdown-link i { font-size: 13px; width: 16px; text-align: center; }
.avd-sidebar-dropdown-logout {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  color: var(--avd-red);
  font-size: 12px;
  font-weight: 700;
  border-radius: var(--avd-radius);
  cursor: pointer;
  transition: var(--avd-transition);
  background: none;
  border: none;
  width: 100%;
  text-align: left;
  margin-top: 4px;
  border-top: 1px solid var(--avd-border-soft);
}
.avd-sidebar-dropdown-logout:hover { background: var(--avd-red-bg); }

/* ════════════════════════════════════════════════════════════
   22. ACCESS MANAGER MODAL
════════════════════════════════════════════════════════════ */
.avd-access-modal { max-width: 520px; }

.avd-access-user-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px solid var(--avd-border-soft);
}
.avd-access-user-row:last-child { border-bottom: none; }

.avd-access-avatar {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: var(--avd-ink);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 13px;
  font-weight: 800;
  color: var(--avd-bg);
  flex-shrink: 0;
}
.avd-access-info { flex: 1; min-width: 0; }
.avd-access-name {
  font-size: 12px;
  font-weight: 700;
  color: var(--avd-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.avd-access-email {
  font-size: 10px;
  color: var(--avd-text-faint);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.avd-access-perm-select {
  background: var(--avd-input-bg);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius);
  color: var(--avd-text);
  font-size: 11px;
  padding: 4px 8px;
  cursor: pointer;
  outline: none;
  font-family: inherit;
}
.avd-access-remove-btn {
  background: var(--avd-red-bg);
  border: 1px solid var(--avd-red);
  color: var(--avd-red);
  border-radius: var(--avd-radius);
  width: 28px;
  height: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  font-size: 11px;
  flex-shrink: 0;
  transition: var(--avd-transition);
}
.avd-access-remove-btn:hover { opacity: 0.8; }
.avd-access-add-section {
  background: var(--avd-border-soft);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius);
  padding: 16px;
  margin-top: 16px;
}
.avd-access-add-row { display: flex; gap: 8px; margin-top: 10px; flex-wrap: wrap; }
.avd-access-input {
  flex: 1;
  background: var(--avd-input-bg);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius);
  color: var(--avd-text);
  font-size: 12px;
  padding: 8px 12px;
  outline: none;
  font-family: inherit;
  transition: var(--avd-transition);
  min-width: 0;
}
.avd-access-input:focus { border-color: var(--avd-ink); }
.avd-access-input::placeholder { color: var(--avd-text-faint); }
.avd-access-users-list { max-height: 280px; overflow-y: auto; margin-top: 8px; }
.avd-access-empty {
  text-align: center;
  padding: 20px;
  color: var(--avd-text-faint);
  font-size: 12px;
}
.avd-access-empty i {
  font-size: 24px;
  display: block;
  margin-bottom: 8px;
  color: var(--avd-text-faint);
}

#avdAccessSearchResults {
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius);
  box-shadow: var(--avd-shadow-lg);
}

.avd-access-group-row {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 0;
  border-bottom: 1px solid var(--avd-border-soft);
}
.avd-access-group-row:last-child { border-bottom: none; }
.avd-access-group-avatar {
  width: 34px;
  height: 34px;
  border-radius: var(--avd-radius);
  background: var(--avd-ink);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  color: var(--avd-bg);
  flex-shrink: 0;
}
.avd-access-tabs {
  display: flex;
  gap: 2px;
  background: var(--avd-border-soft);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius);
  padding: 3px;
  margin-bottom: 14px;
}
.avd-access-tab {
  flex: 1;
  padding: 6px 10px;
  text-align: center;
  font-size: 11px;
  font-weight: 700;
  color: var(--avd-text-muted);
  border-radius: var(--avd-radius);
  cursor: pointer;
  transition: var(--avd-transition);
}
.avd-access-tab.active { background: var(--avd-ink); color: var(--avd-bg); }

/* ════════════════════════════════════════════════════════════
   23. SCROLLBARS (global)
════════════════════════════════════════════════════════════ */
* { scrollbar-width: thin; scrollbar-color: var(--avd-border) transparent; }
*::-webkit-scrollbar { width: 4px; height: 4px; }
*::-webkit-scrollbar-thumb { background: var(--avd-border); border-radius: 4px; }
*::-webkit-scrollbar-thumb:hover { background: var(--avd-text-faint); }

/* ════════════════════════════════════════════════════════════
   24. LIGHT MODE GLOBAL ADJUSTMENTS
════════════════════════════════════════════════════════════ */
body.light-mode .avd-file-card,
body.light-mode .avd-folder-card,
body.light-mode .avd-file-list,
body.light-mode .avd-activity-feed,
body.light-mode .avd-quick-card,
body.light-mode .avd-stat-card { box-shadow: var(--avd-shadow); }

/* ════════════════════════════════════════════════════════════
   25. RESPONSIVE — TABLET (≤ 1200px)
════════════════════════════════════════════════════════════ */
@media (max-width: 1200px) {
  :root {
    --avd-panel-w: 280px;
    --avd-sidebar-w: 240px;
  }
  .avd-stats-grid { grid-template-columns: repeat(2, 1fr); }
  #avdViewHome > div[style*="grid-template-columns:1fr 340px"],
  #avdViewHome > div[style*="grid-template-columns: 1fr 340px"] {
    display: flex !important;
    flex-direction: column;
    gap: 20px;
  }
}

/* ════════════════════════════════════════════════════════════
   26. RESPONSIVE — MOBILE (≤ 768px)
════════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
  html, body { overflow: hidden; }

  #avDriveApp { flex-direction: row; }

  #avdSidebar {
    position: fixed;
    left: 0;
    top: 0;
    bottom: 0;
    z-index: 1000;
    transform: translateX(-100%);
    overflow-y: auto;
    overflow-x: hidden;
  }
  #avdSidebar.mobile-open {
    transform: translateX(0);
    box-shadow: var(--avd-shadow-lg);
  }
  #avdSidebar.mobile-open::before {
    content: '';
    position: fixed;
    inset: 0;
    left: var(--avd-sidebar-w);
    background: rgba(0,0,0,0.5);
    z-index: -1;
  }

  .avd-sidebar-toggle { display: none !important; }

  #avdMain { flex: 1; }

  #avdDetailsPanel {
    position: fixed;
    right: 0;
    top: 0;
    bottom: 0;
    z-index: 900;
    transform: translateX(100%);
    transition: transform 0.3s ease, width 0.3s ease;
  }
  #avdDetailsPanel.open {
    transform: translateX(0);
    width: min(340px, 100vw) !important;
    box-shadow: var(--avd-shadow-lg);
  }

  #avdMobileMenuBtn { display: flex !important; }

  .avd-breadcrumb { display: none; }
  .avd-filter-tabs { display: none; }

  .avd-search-wrap { max-width: none; flex: 1; }

  #avDriveContent { padding: 14px 14px; }

  .avd-stats-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
  .avd-stat-card { padding: 12px 14px; }
  .avd-stat-icon { width: 38px; height: 38px; font-size: 15px; }
  .avd-stat-value { font-size: 18px; }

  .avd-file-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
  .avd-quick-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }
  .avd-folder-grid { grid-template-columns: repeat(2, 1fr); gap: 10px; }

  .avd-home-hero {
    padding: 20px;
    border-radius: var(--avd-radius-lg);
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
  }
  .avd-home-hero-text h2 { font-size: 18px; }
  .avd-home-hero-actions { width: 100%; }
  .avd-home-hero-actions .avd-btn { flex: 1; justify-content: center; }

  .avd-select-bar {
    bottom: 16px;
    left: 12px;
    right: 12px;
    transform: none;
    border-radius: var(--avd-radius-lg);
    flex-wrap: wrap;
    gap: 4px;
    justify-content: center;
  }

  .avd-file-list-header,
  .avd-file-row {
    grid-template-columns: 28px 1fr 80px 60px;
  }
  .avd-file-list-header > span:nth-child(5),
  .avd-file-list-header > span:nth-child(6),
  .avd-file-row > .avd-file-row-cell:last-of-type { display: none; }

  .avd-type-grid { grid-template-columns: 1fr; }
  .avd-modal-overlay { padding: 10px; align-items: flex-end; }
  .avd-modal { border-radius: var(--avd-radius-lg); max-height: 95vh; }
  .avd-modal-lg { max-width: 100%; }
}

/* ════════════════════════════════════════════════════════════
   27. RESPONSIVE — SMALL MOBILE (≤ 480px)
════════════════════════════════════════════════════════════ */
@media (max-width: 480px) {
  :root { --avd-header-h: 52px; }

  #avDriveHeader { padding: 0 10px; gap: 6px; }
  .avd-header-btn span { display: none; }

  .avd-file-grid { grid-template-columns: 1fr 1fr; gap: 8px; }
  .avd-quick-grid { grid-template-columns: 1fr 1fr; gap: 8px; }
  .avd-folder-grid { grid-template-columns: 1fr 1fr; gap: 8px; }

  .avd-stats-grid { gap: 8px; }
  .avd-stat-card { padding: 10px 12px; gap: 10px; }

  .avd-home-hero-actions { flex-direction: column; }
  .avd-home-hero-actions .avd-btn { width: 100%; }

  .avd-panel-tab { font-size: 10px; padding: 8px 4px; }
}

/* ── SIDEBAR PLATFORM NAV (duplicate-hardened) ─────────────── */
.avd-platform-nav .avd-nav-label {
    padding: 10px 16px 4px;
    font-size: 9px;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 1.2px;
    color: var(--avd-text-faint);
}

/* ── Mobile sidebar close button ──────────────────── */
.avd-mobile-close-btn {
  display: none;
  position: absolute;
  top: 12px;
  right: 12px;
  width: 32px;
  height: 32px;
  border-radius: var(--avd-radius);
  background: var(--avd-border-soft);
  border: 1px solid var(--avd-border);
  color: var(--avd-text-muted);
  font-size: 14px;
  cursor: pointer;
  align-items: center;
  justify-content: center;
  z-index: 10;
  transition: var(--avd-transition);
}
.avd-mobile-close-btn:hover {
  background: var(--avd-red-bg);
  color: var(--avd-red);
  border-color: var(--avd-red);
}
@media (max-width: 768px) {
  .avd-mobile-close-btn { display: flex; }
}

/* ── Logo text (sidebar ouverte) ─────────────── */
.avd-sidebar-logo-text {
  display: block;
  height: 42px !important;
  max-width: 180px !important;
  object-fit: contain;
}
body.light-mode .avd-sidebar-logo-text { filter: none; }
body:not(.light-mode) .avd-sidebar-logo-text { filter: invert(1) brightness(1.8); }

.avd-sidebar-logo-icon {
  display: none;
  height: 40px !important;
  width:  40px !important;
  object-fit: contain;
}

#avdSidebar.collapsed .avd-sidebar-logo-text { display: none; }
#avdSidebar.collapsed .avd-sidebar-logo-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 12px 0 10px;
  width: 100%;
}

#avdSidebar a.avd-sidebar-logo,
#avdSidebar > a:first-of-type {
  padding: 14px 14px 12px !important;
  min-height: 62px;
}

/* ════════════════════════════════════════════════════════════
 MCP QUICK ASSISTANT — Drive Integration
════════════════════════════════════════════════════════════ */

.avd-mcp-section {
position: relative;
background: var(--avd-card);
border: 1px solid var(--avd-border);
border-radius: var(--avd-radius-lg);
padding: 14px 18px;
margin-bottom: 20px;
overflow: hidden;
transition: var(--avd-transition);
box-shadow: var(--avd-shadow);
}

.avd-mcp-section::before {
content: '';
position: absolute;
top: 0; left: 0; right: 0;
height: 2px;
background: var(--avd-ink);
opacity: 0.4;
pointer-events: none;
}

.avd-mcp-section:focus-within {
border-color: var(--avd-ink-soft);
}

/* ── Header Row ──────────────────────────────────────────── */
.avd-mcp-header-row {
display: flex;
align-items: center;
gap: 10px;
margin-bottom: 10px;
}

.avd-mcp-badge {
display: flex;
align-items: center;
gap: 6px;
font-size: 10px;
font-weight: 800;
text-transform: uppercase;
letter-spacing: 1px;
color: var(--avd-text);
}

.avd-mcp-badge i {
font-size: 12px;
color: var(--avd-text);
}

.avd-mcp-badge-logo {
width: 15px;
height: 15px;
object-fit: contain;
flex-shrink: 0;
opacity: 0.9;
filter: grayscale(100%);
}

.avd-mcp-badge-text {
color: var(--avd-text);
}

.avd-mcp-status {
display: flex;
align-items: center;
gap: 5px;
font-size: 10px;
font-weight: 600;
color: var(--avd-text-faint);
}

.avd-mcp-status-dot {
width: 6px;
height: 6px;
border-radius: 50%;
background: var(--avd-text-faint);
flex-shrink: 0;
transition: var(--avd-transition);
}

.avd-mcp-status-dot.ready { background: var(--avd-text); }
.avd-mcp-status-dot.loading { background: var(--avd-text-muted); animation: pulseDot 0.8s infinite; }
.avd-mcp-status-dot.error { background: var(--avd-red); }

.avd-mcp-open-link {
display: flex;
align-items: center;
gap: 5px;
padding: 4px 10px;
margin-left: auto;
background: var(--avd-border-soft);
border: 1px solid var(--avd-border);
border-radius: var(--avd-radius);
font-size: 10px;
font-weight: 700;
color: var(--avd-text);
cursor: pointer;
text-decoration: none;
transition: var(--avd-transition);
white-space: nowrap;
font-family: inherit;
}

.avd-mcp-open-link:hover {
border-color: var(--avd-ink-soft);
}

.avd-mcp-open-link i { font-size: 9px; }

/* ── Input Row ───────────────────────────────────────────── */
.avd-mcp-input-row {
display: flex;
align-items: center;
gap: 8px;
background: var(--avd-input-bg);
border: 1px solid var(--avd-border);
border-radius: var(--avd-radius);
padding: 0 10px 0 12px;
transition: var(--avd-transition);
}

.avd-mcp-input-row:focus-within {
border-color: var(--avd-ink);
}

.avd-mcp-input-icon {
font-size: 11px;
color: var(--avd-text-faint);
flex-shrink: 0;
pointer-events: none;
}

.avd-mcp-input {
flex: 1;
background: transparent;
border: none;
outline: none;
font-family: inherit;
font-size: 12px;
color: var(--avd-text);
padding: 9px 0;
min-width: 0;
}

.avd-mcp-input::placeholder { color: var(--avd-text-faint); }

.avd-mcp-char {
font-size: 9px;
color: var(--avd-text-faint);
flex-shrink: 0;
font-weight: 600;
min-width: 32px;
text-align: right;
opacity: 0;
transition: opacity 0.2s;
}

.avd-mcp-char.visible { opacity: 1; }

.avd-mcp-send {
width: 28px;
height: 28px;
border-radius: var(--avd-radius);
border: none;
background: var(--avd-ink);
color: var(--avd-bg);
font-size: 11px;
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
flex-shrink: 0;
transition: var(--avd-transition);
}

.avd-mcp-send:hover { opacity: 0.85; }

.avd-mcp-send:disabled {
opacity: 0.4;
cursor: not-allowed;
transform: none;
}

/* ── Chips ───────────────────────────────────────────────── */
.avd-mcp-chips {
display: flex;
align-items: center;
gap: 6px;
margin-top: 10px;
flex-wrap: wrap;
}

.avd-mcp-chip {
display: inline-flex;
align-items: center;
gap: 5px;
padding: 4px 10px;
background: var(--avd-border-soft);
border: 1px solid var(--avd-border);
border-radius: var(--avd-radius-xl);
font-size: 10px;
font-weight: 700;
color: var(--avd-text-muted);
cursor: pointer;
transition: var(--avd-transition);
font-family: inherit;
white-space: nowrap;
}

.avd-mcp-chip:hover {
border-color: var(--avd-ink-soft);
color: var(--avd-text);
}

.avd-mcp-chip i { font-size: 9px; }

.avd-mcp-chip-workspace {
border-color: var(--avd-ink-soft);
color: var(--avd-text);
}
.avd-mcp-chip-workspace:hover {
background: var(--avd-border-soft);
color: var(--avd-text);
}

/* ── Response Area ───────────────────────────────────────── */
.avd-mcp-response-wrap {
margin-top: 12px;
background: var(--avd-border-soft);
border: 1px solid var(--avd-border);
border-radius: var(--avd-radius);
overflow: hidden;
animation: avdFadeIn 0.2s ease;
}

.avd-mcp-response-header {
display: flex;
align-items: center;
justify-content: space-between;
padding: 9px 12px;
border-bottom: 1px solid var(--avd-border);
background: var(--avd-card-hover);
}

.avd-mcp-response-label {
display: flex;
align-items: center;
gap: 7px;
font-size: 10px;
font-weight: 800;
color: var(--avd-text);
text-transform: uppercase;
letter-spacing: 0.8px;
}

.avd-mcp-response-label i { font-size: 11px; }

.avd-mcp-response-meta {
font-size: 9px;
font-weight: 600;
color: var(--avd-text-faint);
text-transform: none;
letter-spacing: 0;
padding: 2px 7px;
background: var(--avd-card);
border-radius: var(--avd-radius);
border: 1px solid var(--avd-border);
}

.avd-mcp-close-response {
width: 22px;
height: 22px;
border-radius: var(--avd-radius);
border: 1px solid var(--avd-border);
background: var(--avd-card);
color: var(--avd-text-faint);
cursor: pointer;
display: flex;
align-items: center;
justify-content: center;
font-size: 10px;
transition: var(--avd-transition);
flex-shrink: 0;
}

.avd-mcp-close-response:hover {
background: var(--avd-red-bg);
color: var(--avd-red);
border-color: var(--avd-red);
}

.avd-mcp-response-content {
padding: 12px 14px;
max-height: 280px;
overflow-y: auto;
font-size: 12px;
color: var(--avd-text);
line-height: 1.6;
}

.avd-mcp-response-content::-webkit-scrollbar { width: 3px; }
.avd-mcp-response-content::-webkit-scrollbar-thumb {
background: var(--avd-border);
border-radius: 3px;
}

/* Thinking */
.avd-mcp-thinking {
display: flex;
align-items: center;
gap: 8px;
color: var(--avd-text-muted);
font-size: 12px;
font-weight: 600;
padding: 4px 0;
}

.avd-mcp-thinking i { color: var(--avd-text); font-size: 13px; }

/* Result items */
.avd-mcp-result-item {
display: flex;
align-items: center;
gap: 10px;
padding: 8px 10px;
background: var(--avd-card);
border: 1px solid var(--avd-border);
border-radius: var(--avd-radius);
margin-bottom: 6px;
cursor: pointer;
transition: var(--avd-transition);
}

.avd-mcp-result-item:last-child { margin-bottom: 0; }

.avd-mcp-result-item:hover {
border-color: var(--avd-ink-soft);
}

.avd-mcp-result-icon {
width: 28px;
height: 28px;
border-radius: var(--avd-radius);
display: flex;
align-items: center;
justify-content: center;
font-size: 12px;
flex-shrink: 0;
background: var(--avd-border-soft);
color: var(--avd-text);
}

.avd-mcp-result-body { flex: 1; min-width: 0; }

.avd-mcp-result-name {
font-size: 11px;
font-weight: 700;
color: var(--avd-text);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}

.avd-mcp-result-sub {
font-size: 10px;
color: var(--avd-text-faint);
margin-top: 1px;
}

.avd-mcp-result-badge {
font-size: 9px;
font-weight: 800;
padding: 2px 7px;
border-radius: var(--avd-radius-xl);
flex-shrink: 0;
background: var(--avd-border-soft);
color: var(--avd-text);
border: 1px solid var(--avd-border);
}

/* Profile block */
.avd-mcp-profile-block {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 8px;
margin-bottom: 8px;
}

.avd-mcp-profile-stat {
background: var(--avd-card);
border: 1px solid var(--avd-border);
border-radius: var(--avd-radius);
padding: 10px 12px;
text-align: center;
}

.avd-mcp-profile-val {
font-size: 18px;
font-weight: 900;
color: var(--avd-text);
}

.avd-mcp-profile-lbl {
font-size: 9px;
font-weight: 700;
color: var(--avd-text-faint);
text-transform: uppercase;
letter-spacing: 0.6px;
margin-top: 2px;
}

/* Text response */
.avd-mcp-text-response {
font-size: 12px;
color: var(--avd-text-muted);
line-height: 1.7;
padding: 4px 0;
}

.avd-mcp-text-response strong { color: var(--avd-text); }

/* Response footer */
.avd-mcp-response-footer {
padding: 8px 14px;
border-top: 1px solid var(--avd-border);
display: flex;
align-items: center;
justify-content: flex-end;
}

.avd-mcp-full-btn {
display: inline-flex;
align-items: center;
gap: 5px;
padding: 5px 12px;
background: var(--avd-border-soft);
border: 1px solid var(--avd-border);
border-radius: var(--avd-radius);
font-size: 10px;
font-weight: 700;
color: var(--avd-text);
cursor: pointer;
font-family: inherit;
transition: var(--avd-transition);
text-decoration: none;
}

.avd-mcp-full-btn:hover {
border-color: var(--avd-ink-soft);
}

.avd-mcp-full-btn i { font-size: 9px; }

/* Error */
.avd-mcp-error {
display: flex;
align-items: center;
gap: 8px;
padding: 8px 10px;
background: var(--avd-red-bg);
border: 1px solid var(--avd-red);
border-radius: var(--avd-radius);
font-size: 11px;
color: var(--avd-red);
font-weight: 600;
}

.avd-mcp-error i { font-size: 12px; flex-shrink: 0; }

/* Empty */
.avd-mcp-empty {
text-align: center;
padding: 16px;
font-size: 11px;
color: var(--avd-text-faint);
}

.avd-mcp-empty i {
font-size: 22px;
display: block;
margin-bottom: 6px;
color: var(--avd-text-faint);
}

/* ── Responsive ──────────────────────────────────────────── */
@media (max-width: 768px) {
.avd-mcp-chips  { gap: 5px; }
.avd-mcp-chip   { font-size: 9px; padding: 3px 8px; }
.avd-mcp-open-link span { display: none; }
.avd-mcp-profile-block { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 480px) {
.avd-mcp-section { padding: 12px 14px; }
.avd-mcp-chips {
    flex-wrap: nowrap;
    overflow-x: auto;
    padding-bottom: 2px;
}
.avd-mcp-chips::-webkit-scrollbar { height: 0; }
}

/* ════════════════════════════════════════════════════════
 THIN RING SPINNER
════════════════════════════════════════════════════════ */
@keyframes avd-ring-spin {
0%   { transform: rotate(0deg); }
100% { transform: rotate(360deg); }
}
.avd-ring {
display: inline-block;
width: 18px;
height: 18px;
border: 1.5px solid var(--avd-border);
border-top-color: var(--avd-ink);
border-radius: 50%;
animation: avd-ring-spin 0.75s linear infinite;
vertical-align: middle;
flex-shrink: 0;
}
.avd-ring-sm  { width: 13px; height: 13px; border-width: 1.5px; }
.avd-ring-md  { width: 18px; height: 18px; border-width: 1.5px; }
.avd-ring-lg  { width: 26px; height: 26px; border-width: 2px; }
.avd-ring-xl  { width: 36px; height: 36px; border-width: 2px; }
.avd-ring.green,
.avd-ring.amber { border-top-color: var(--avd-ink); }
.avd-ring.white { border-top-color: var(--avd-bg); border-color: rgba(255,255,255,0.15); }

/* ════════════════════════════════════════════════════════
SHAREPOINT — COMMAND BAR
════════════════════════════════════════════════════════ */
.avd-sp-commandbar {
display: flex;
align-items: center;
justify-content: space-between;
padding: 10px 4px;
border-bottom: 1px solid var(--avd-border);
gap: 8px;
flex-wrap: wrap;
}
.avd-sp-commandbar-left  { display: flex; align-items: center; gap: 2px; flex-wrap: wrap; }
.avd-sp-commandbar-right { display: flex; align-items: center; gap: 10px; }

.avd-sp-cmd-btn {
display: inline-flex;
align-items: center;
gap: 6px;
padding: 6px 12px;
border-radius: var(--avd-radius);
border: 1px solid transparent;
background: transparent;
color: var(--avd-text);
font-size: 12px;
font-weight: 600;
cursor: pointer;
transition: var(--avd-transition);
font-family: inherit;
white-space: nowrap;
letter-spacing: 0.1px;
}
.avd-sp-cmd-btn:hover {
background: var(--avd-border-soft);
border-color: var(--avd-border);
}
.avd-sp-cmd-btn.primary {
background: var(--avd-ink);
color: var(--avd-bg);
border-color: transparent;
}
.avd-sp-cmd-btn.primary:hover { opacity: 0.85; }
.avd-sp-cmd-btn .fa-chevron-down { font-size: 8px; opacity: 0.7; }
.avd-sp-cmd-divider {
width: 1px; height: 18px;
background: var(--avd-border);
margin: 0 4px;
flex-shrink: 0;
}
.avd-sp-items-count {
font-size: 11px; color: var(--avd-text-faint); font-weight: 600; white-space: nowrap;
}

/* ════════════════════════════════════════════════════════
SHAREPOINT — PATH BAR
════════════════════════════════════════════════════════ */
.avd-sp-path {
display: flex;
align-items: center;
gap: 4px;
padding: 8px 4px;
font-size: 13px;
font-weight: 700;
flex-wrap: wrap;
min-height: 38px;
}
.avd-sp-path-segment {
display: inline-flex;
align-items: center;
gap: 5px;
color: var(--avd-text);
cursor: pointer;
padding: 3px 8px;
border-radius: var(--avd-radius);
transition: background 0.15s;
font-weight: 700;
}
.avd-sp-path-segment:hover  { background: var(--avd-border-soft); }
.avd-sp-path-segment.current {
color: var(--avd-text);
cursor: default;
pointer-events: none;
font-weight: 800;
}
.avd-sp-path-sep { color: var(--avd-text-faint); font-size: 10px; }

/* ════════════════════════════════════════════════════════
SHAREPOINT — SECTION LABELS
════════════════════════════════════════════════════════ */
.avd-sp-section-label {
display: flex;
align-items: center;
gap: 8px;
font-size: 10px;
font-weight: 800;
color: var(--avd-text-faint);
text-transform: uppercase;
letter-spacing: 0.8px;
padding: 14px 4px 8px;
}
.avd-sp-section-label i { font-size: 11px; }

/* ════════════════════════════════════════════════════════
SHAREPOINT — FOLDER CARDS
════════════════════════════════════════════════════════ */
.avd-sp-folders-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(210px, 1fr));
gap: 8px;
margin-bottom: 4px;
}
.avd-sp-folder-card {
display: flex;
align-items: center;
gap: 10px;
padding: 10px 12px;
background: var(--avd-card);
border: 1px solid var(--avd-border);
border-radius: var(--avd-radius);
cursor: pointer;
transition: var(--avd-transition);
position: relative;
overflow: hidden;
}
.avd-sp-folder-card:hover {
border-color: var(--avd-ink-soft);
transform: translateY(-1px);
}
.avd-sp-folder-icon {
width: 34px; height: 34px;
border-radius: var(--avd-radius);
background: var(--avd-border-soft);
display: flex; align-items: center; justify-content: center;
font-size: 16px;
flex-shrink: 0;
position: relative;
color: var(--avd-text);
}
.avd-sp-folder-info { flex: 1; min-width: 0; }
.avd-sp-folder-name {
font-size: 12px; font-weight: 700;
color: var(--avd-text);
white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.avd-sp-folder-sub {
font-size: 10px; color: var(--avd-text-faint); margin-top: 1px;
display: flex; align-items: center; gap: 5px;
}
.avd-sp-folder-actions {
display: flex; gap: 2px;
opacity: 0; transition: opacity 0.15s;
}
.avd-sp-folder-card:hover .avd-sp-folder-actions { opacity: 1; }
.avd-sp-folder-action-btn {
width: 24px; height: 24px; border-radius: var(--avd-radius);
border: none; background: transparent;
color: var(--avd-text-faint); cursor: pointer; font-size: 10px;
display: flex; align-items: center; justify-content: center;
transition: var(--avd-transition);
}
.avd-sp-folder-action-btn:hover { background: var(--avd-border-soft); color: var(--avd-text); }
.avd-sp-folder-action-btn.danger:hover { background: var(--avd-red-bg); color: var(--avd-red); }

.avd-sp-shared-dot {
position: absolute; top: 5px; right: 5px;
width: 14px; height: 14px; border-radius: 50%;
background: var(--avd-ink);
display: flex; align-items: center; justify-content: center;
}
.avd-sp-shared-dot i { font-size: 6px; color: var(--avd-bg); }

/* ════════════════════════════════════════════════════════
SHAREPOINT — FILE TABLE
════════════════════════════════════════════════════════ */
.avd-sp-table-wrap {
background: var(--avd-card);
border: 1px solid var(--avd-border);
border-radius: var(--avd-radius-lg);
overflow: hidden;
}
.avd-sp-table-header {
display: grid;
grid-template-columns: 36px minmax(180px,1fr) 80px 130px 80px 80px 110px;
align-items: center;
padding: 0 10px;
height: 34px;
background: var(--avd-border-soft);
border-bottom: 1px solid var(--avd-border);
font-size: 10px;
font-weight: 800;
color: var(--avd-text-faint);
text-transform: uppercase;
letter-spacing: 0.6px;
position: sticky; top: 0; z-index: 2;
}
.avd-sp-table-header > span {
display: flex; align-items: center; gap: 3px;
cursor: pointer; padding: 3px 5px; border-radius: 4px;
transition: background 0.15s; user-select: none;
}
.avd-sp-table-header > span:hover { background: var(--avd-card-hover); color: var(--avd-text); }
.avd-sp-table-header > span:first-child { cursor: default; }
.avd-sp-table-header > span:first-child:hover { background: none; }

.avd-sp-row {
display: grid;
grid-template-columns: 36px minmax(180px,1fr) 80px 130px 80px 80px 110px;
align-items: center;
padding: 0 10px;
height: 42px;
border-bottom: 1px solid var(--avd-border-soft);
cursor: pointer;
transition: background 0.1s;
position: relative;
}
.avd-sp-row:last-child { border-bottom: none; }
.avd-sp-row:hover     { background: var(--avd-border-soft); }
.avd-sp-row.selected  { background: var(--avd-border-soft); }

.avd-sp-row-check {
width: 18px; height: 18px;
border: 1.5px solid var(--avd-border);
border-radius: 4px;
display: flex; align-items: center; justify-content: center;
transition: all 0.15s; cursor: pointer; flex-shrink: 0;
}
.avd-sp-row:hover .avd-sp-row-check { border-color: var(--avd-ink); }
.avd-sp-row.selected .avd-sp-row-check {
background: var(--avd-ink); border-color: var(--avd-ink);
}
.avd-sp-row.selected .avd-sp-row-check::after {
content: ''; width: 7px; height: 3.5px;
border-left: 1.5px solid var(--avd-bg); border-bottom: 1.5px solid var(--avd-bg);
transform: rotate(-45deg) translateY(-1px);
display: block;
}

.avd-sp-row-name {
display: flex; align-items: center; gap: 9px;
min-width: 0; padding: 0 5px;
}
.avd-sp-row-icon {
width: 28px; height: 28px; border-radius: var(--avd-radius);
display: flex; align-items: center; justify-content: center;
font-size: 13px; flex-shrink: 0;
background: var(--avd-border-soft);
color: var(--avd-text);
}
.avd-sp-row-title-wrap { flex: 1; min-width: 0; }
.avd-sp-row-title {
font-size: 13px; font-weight: 600; color: var(--avd-text);
white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
transition: color 0.12s;
}
.avd-sp-row:hover .avd-sp-row-title { color: var(--avd-text); }
.avd-sp-row-sub {
font-size: 10px; color: var(--avd-text-faint); margin-top: 1px;
white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}

.avd-sp-row-cell {
font-size: 11px; color: var(--avd-text-muted);
white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
padding: 0 5px;
}

.avd-sp-type-badge {
display: inline-flex; align-items: center; gap: 4px;
padding: 2px 8px; border-radius: var(--avd-radius-xl);
font-size: 10px; font-weight: 700;
background: var(--avd-border-soft); color: var(--avd-text);
border: 1px solid var(--avd-border);
}

.avd-sp-shared-cell {
display: flex; align-items: center; gap: 4px;
font-size: 10px; color: var(--avd-text); font-weight: 600;
}

.avd-sp-row-actions {
display: flex; align-items: center; gap: 2px;
opacity: 0; transition: opacity 0.12s;
}
.avd-sp-row:hover .avd-sp-row-actions { opacity: 1; }
.avd-sp-act-btn {
width: 26px; height: 26px; border-radius: var(--avd-radius);
border: none; background: transparent;
color: var(--avd-text-faint); cursor: pointer; font-size: 11px;
display: flex; align-items: center; justify-content: center;
transition: all 0.13s;
}
.avd-sp-act-btn:hover { background: var(--avd-border-soft); color: var(--avd-text); }
.avd-sp-act-btn.danger:hover { background: var(--avd-red-bg); color: var(--avd-red); }

.avd-sp-up-btn {
display: inline-flex; align-items: center; gap: 7px;
padding: 6px 14px; border-radius: var(--avd-radius);
border: 1px solid var(--avd-border);
background: transparent; color: var(--avd-text);
font-size: 12px; font-weight: 600;
cursor: pointer; transition: var(--avd-transition);
font-family: inherit;
margin-bottom: 8px;
}
.avd-sp-up-btn:hover {
background: var(--avd-border-soft);
border-color: var(--avd-ink-soft);
}

.avd-sp-empty {
padding: 40px 20px; text-align: center;
color: var(--avd-text-faint); font-size: 13px;
}
.avd-sp-empty i { font-size: 32px; display: block; margin-bottom: 12px; opacity: 0.4; }
.avd-sp-empty-title { font-size: 14px; font-weight: 700; color: var(--avd-text-muted); margin-bottom: 6px; }

/* ════════════════════════════════════════════════════════
SIDEBAR — My Drive extras (MCP / Code IDE)
════════════════════════════════════════════════════════ */
.avd-nav-tool-link {
display: flex;
align-items: center;
gap: 10px;
padding: 7px 10px 7px 14px;
border-radius: var(--avd-radius);
margin: 1px 6px;
text-decoration: none;
color: var(--avd-text-faint);
font-size: 12px;
font-weight: 600;
transition: var(--avd-transition);
cursor: pointer;
}
.avd-nav-tool-link:hover {
background: var(--avd-border-soft);
color: var(--avd-text);
}
.avd-nav-tool-link .avd-nav-tool-icon {
width: 26px; height: 26px; border-radius: var(--avd-radius);
display: flex; align-items: center; justify-content: center;
font-size: 11px; flex-shrink: 0;
background: var(--avd-border-soft); color: var(--avd-text-muted);
}
.avd-nav-tool-link .avd-nav-tool-badge {
margin-left: auto; font-size: 9px; font-weight: 700;
padding: 2px 6px; border-radius: var(--avd-radius-xl);
background: var(--avd-border-soft); color: var(--avd-text);
border: 1px solid var(--avd-border);
flex-shrink: 0;
}

/* ════════════════════════════════════════════════════════
SIDEBAR — Code IDE Projects
════════════════════════════════════════════════════════ */
.avd-nav-ide-project {
display: flex; align-items: center; gap: 8px;
padding: 5px 12px 5px 28px;
font-size: 11px; font-weight: 600;
color: var(--avd-text-faint); border-radius: var(--avd-radius);
margin: 1px 6px;
cursor: pointer; transition: all 0.13s;
text-decoration: none; white-space: nowrap;
overflow: hidden; text-overflow: ellipsis;
}
.avd-nav-ide-project:hover {
background: var(--avd-border-soft);
color: var(--avd-text);
}
.avd-nav-ide-project i { font-size: 10px; color: var(--avd-text); flex-shrink: 0; }

/* ════════════════════════════════════════════════════════
HOME — Améliorations
════════════════════════════════════════════════════════ */
.avd-quick-card {
position: relative; overflow: hidden;
transition: all 0.2s;
}
.avd-quick-card:hover {
transform: translateY(-2px);
}

.avd-home-shortcuts {
display: flex; flex-wrap: wrap; gap: 8px;
margin-bottom: 20px;
}
.avd-home-shortcut {
display: inline-flex; align-items: center; gap: 8px;
padding: 7px 14px; border-radius: var(--avd-radius-xl);
border: 1px solid var(--avd-border);
background: var(--avd-card);
color: var(--avd-text); font-size: 12px; font-weight: 600;
cursor: pointer; transition: var(--avd-transition); text-decoration: none;
}
.avd-home-shortcut:hover {
border-color: var(--avd-ink-soft);
background: var(--avd-border-soft);
}
.avd-home-shortcut i { font-size: 11px; }

/* ════════════════════════════════════════════════════════
 REACT LOOP ICON
════════════════════════════════════════════════════════ */
.avd-react-icon {
width: 14px;
height: 14px;
display: inline-block;
vertical-align: middle;
flex-shrink: 0;
color: currentColor;
}
.avd-react-icon-md { width: 16px; height: 16px; }
.avd-react-icon-lg { width: 20px; height: 20px; }

.avd-nav-tool-link .avd-nav-tool-icon.mcp {
background: var(--avd-border-soft);
color: var(--avd-text);
}

/* ════════════════════════════════════════════════════════
SP COMMAND BAR — New Dropdown
════════════════════════════════════════════════════════ */
.avd-sp-new-wrap {
position: relative;
display: inline-block;
}
.avd-sp-new-dropdown {
display: none;
position: absolute;
top: calc(100% + 6px);
left: 0;
z-index: 9999;
min-width: 220px;
background: var(--avd-card);
border: 1px solid var(--avd-border);
border-radius: var(--avd-radius-lg);
padding: 6px;
box-shadow: var(--avd-shadow-lg);
animation: avd-fade-in 0.15s ease;
}
.avd-sp-new-dropdown.open { display: block; }

@keyframes avd-fade-in {
from { opacity: 0; transform: translateY(-4px); }
to   { opacity: 1; transform: translateY(0); }
}

.avd-sp-new-drop-item {
display: flex;
align-items: center;
gap: 10px;
padding: 9px 12px;
border-radius: var(--avd-radius);
cursor: pointer;
transition: background 0.13s;
font-size: 12px;
font-weight: 600;
color: var(--avd-text);
}
.avd-sp-new-drop-item:hover { background: var(--avd-border-soft); }

.avd-sp-new-drop-icon {
width: 30px;
height: 30px;
border-radius: var(--avd-radius);
display: flex;
align-items: center;
justify-content: center;
font-size: 13px;
flex-shrink: 0;
background: var(--avd-border-soft);
color: var(--avd-text-muted);
}

.avd-sp-new-drop-divider {
height: 1px;
background: var(--avd-border-soft);
margin: 4px 0;
}

.avd-sp-new-drop-item .avd-sp-new-drop-desc {
font-size: 10px;
color: var(--avd-text-faint);
font-weight: 400;
margin-top: 1px;
}

/* ════════════════════════════════════════════════════════════
 WORKSPACE APPS GRID — Home View
════════════════════════════════════════════════════════════ */
.avd-workspace-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(230px, 1fr));
gap: 12px;
margin-bottom: 28px;
}

.avd-workspace-card {
display: flex;
align-items: center;
gap: 12px;
padding: 14px 16px;
background: var(--avd-card);
border: 1px solid var(--avd-border);
border-radius: var(--avd-radius-lg);
text-decoration: none;
transition: var(--avd-transition);
cursor: pointer;
position: relative;
overflow: hidden;
}
.avd-workspace-card:hover {
transform: translateY(-2px);
border-color: var(--avd-ink-soft);
}

.avd-workspace-card-icon {
width: 42px;
height: 42px;
border-radius: var(--avd-radius);
display: flex;
align-items: center;
justify-content: center;
font-size: 18px;
color: var(--avd-text);
background: var(--avd-border-soft);
flex-shrink: 0;
transition: transform .2s ease;
}
.avd-workspace-card:hover .avd-workspace-card-icon {
transform: scale(1.06);
}

/* Toutes les variantes ramenées au monochrome */
.avd-wc-teams, .avd-wc-outlook, .avd-wc-crm,
.avd-wc-dealroom, .avd-wc-lp, .avd-wc-mcp, .avd-wc-ide {
background: var(--avd-border-soft);
color: var(--avd-text);
}

.avd-workspace-card-body {
flex: 1;
min-width: 0;
}
.avd-workspace-card-name {
font-size: 13px;
font-weight: 700;
color: var(--avd-text);
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.avd-workspace-card-desc {
font-size: 10px;
color: var(--avd-text-faint);
margin-top: 2px;
white-space: nowrap;
overflow: hidden;
text-overflow: ellipsis;
}
.avd-workspace-card-badge {
font-size: 9px;
font-weight: 800;
padding: 2px 8px;
border-radius: var(--avd-radius-xl);
flex-shrink: 0;
margin-left: auto;
letter-spacing: .4px;
background: var(--avd-border-soft);
color: var(--avd-text-muted);
border: 1px solid var(--avd-border);
}

/* Badges monochrome */
.avd-badge-live, .avd-badge-mail, .avd-badge-crm,
.avd-badge-vdr, .avd-badge-lp, .avd-badge-ai, .avd-badge-ide {
background: var(--avd-border-soft);
color: var(--avd-text-muted);
}

/* Nav tool icons monochrome */
.avd-nav-tool-icon.avd-tool-teams,
.avd-nav-tool-icon.avd-tool-outlook,
.avd-nav-tool-icon.avd-tool-crm,
.avd-nav-tool-icon.avd-tool-dealroom,
.avd-nav-tool-icon.avd-tool-lp {
background: var(--avd-border-soft);
color: var(--avd-text-muted);
}

/* Platform link badge */
.avd-platform-link {
display: flex;
align-items: center;
gap: 8px;
}
.avd-platform-link-badge {
font-size: 8px;
font-weight: 800;
padding: 1px 6px;
border-radius: var(--avd-radius-xl);
margin-left: auto;
flex-shrink: 0;
letter-spacing: .3px;
background: var(--avd-border-soft);
color: var(--avd-text-muted);
}

/* MCP APP FOCUS CARD */
.avd-mcp-app-focus {
border-radius: var(--avd-radius-lg);
transition: var(--avd-transition);
}
.avd-mcp-app-focus:hover {
transform: translateY(-1px);
}

/* ════════════════════════════════════════════════════════════
RESPONSIVE — Workspace Grid
════════════════════════════════════════════════════════════ */
@media (max-width: 900px) {
.avd-workspace-grid {
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
}
}
@media (max-width: 600px) {
.avd-workspace-grid {
    grid-template-columns: 1fr 1fr;
    gap: 8px;
}
.avd-workspace-card {
    flex-direction: column;
    text-align: center;
    padding: 14px 10px;
    gap: 8px;
}
.avd-workspace-card-badge { margin-left: 0; }
.avd-workspace-card-body { min-width: 0; width: 100%; }
.avd-workspace-card-desc { display: none; }
}

.avd-nav-tool-link:hover .avd-nav-tool-icon[style*="ef4444"] {
background: var(--avd-red-bg) !important;
color: var(--avd-red) !important;
}

/* ══════════════════════════════════════════
 AV TEAMS LOGO — Override icon backgrounds
══════════════════════════════════════════ */

.avd-nav-tool-icon.avd-tool-teams {
background    : transparent !important;
box-shadow    : none !important;
border        : 1px solid var(--avd-border);
border-radius : var(--avd-radius);
overflow      : hidden;
padding       : 2px;
}

.avd-nav-tool-icon.avd-tool-teams img {
width         : 100%;
height        : 100%;
object-fit    : contain;
border-radius : 6px;
display       : block;
filter: grayscale(100%);
}

.avd-workspace-card-icon.avd-wc-teams {
background    : transparent !important;
box-shadow    : none !important;
border        : 1px solid var(--avd-border);
border-radius : var(--avd-radius-lg);
overflow      : hidden;
padding       : 4px;
}

.avd-workspace-card-icon.avd-wc-teams img {
width         : 100%;
height        : 100%;
object-fit    : contain;
border-radius : 10px;
display       : block;
filter: grayscale(100%);
}

.avd-platform-link img {
flex-shrink   : 0;
border-radius : 3px;
}

.avd-nav-tool-link:hover .avd-nav-tool-icon.avd-tool-teams,
.avd-workspace-card:hover .avd-workspace-card-icon.avd-wc-teams {
border-color  : var(--avd-ink-soft);
}

/* ═══════════════════════════════════════════════════════════════
 DRIVE GEMINI ASSISTANT v2.0 — Monochrome
 ═══════════════════════════════════════════════════════════════ */

 .avd-gemini-section {
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-xl);
  overflow: hidden;
  margin-bottom: 24px;
  position: relative;
  box-shadow: var(--avd-shadow);
}

.avd-gemini-section::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: var(--avd-ink);
  opacity: 0.4;
}

/* Header */
.avd-gemini-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px 10px;
  border-bottom: 1px solid var(--avd-border);
  background: var(--avd-border-soft);
}

.avd-gemini-badge {
  display: flex;
  align-items: center;
  gap: 8px;
}

.avd-gemini-badge-logo {
  width: 24px;
  height: 24px;
  border-radius: var(--avd-radius);
  object-fit: contain;
}

.avd-gemini-badge-title {
  font-size: 13px;
  font-weight: 800;
  color: var(--avd-text);
  letter-spacing: -0.2px;
}

.avd-gemini-badge-sub {
  font-size: 9px;
  font-weight: 700;
  color: var(--avd-text-muted);
  background: var(--avd-card);
  padding: 1px 7px;
  border-radius: var(--avd-radius-xl);
  border: 1px solid var(--avd-border);
  letter-spacing: 0.3px;
  text-transform: uppercase;
}

.avd-gemini-clear {
  background: none;
  border: none;
  color: var(--avd-text-faint);
  font-size: 11px;
  cursor: pointer;
  padding: 5px 8px;
  border-radius: var(--avd-radius);
  transition: all 0.15s;
}

.avd-gemini-clear:hover {
  color: var(--avd-text);
  background: var(--avd-card-hover);
}

.avd-gemini-messages {
  max-height: 260px;
  overflow-y: auto;
  padding: 12px 14px;
  display: flex;
  flex-direction: column;
  gap: 10px;
  scroll-behavior: smooth;
}

.avd-gemini-messages::-webkit-scrollbar { width: 3px; }
.avd-gemini-messages::-webkit-scrollbar-thumb {
  background: var(--avd-border);
  border-radius: 3px;
}

.avd-gemini-welcome {
  text-align: center;
  padding: 18px 12px;
}

.avd-gemini-welcome-icon {
  width: 48px !important;
  height: 48px !important;
  margin: 0 auto 12px !important;
  background: var(--avd-card) !important;
  border: 1.5px solid var(--avd-border) !important;
  border-radius: 16px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 10px !important;
  box-shadow: var(--avd-shadow) !important;
}

.avd-gemini-welcome-title {
  font-size: 14px;
  font-weight: 800;
  color: var(--avd-text);
  margin-bottom: 5px;
}

.avd-gemini-welcome-sub {
  font-size: 11px;
  color: var(--avd-text-faint);
  line-height: 1.5;
}

.avd-gemini-msg {
  display: flex;
  gap: 8px;
  align-items: flex-start;
  animation: avdMsgFadeIn 0.22s ease;
}

@keyframes avdMsgFadeIn {
  from { opacity: 0; transform: translateY(5px); }
  to   { opacity: 1; transform: translateY(0); }
}

.avd-gemini-msg.user { flex-direction: row-reverse; }

.avd-gemini-msg-avatar {
  width: 28px;
  height: 28px;
  border-radius: var(--avd-radius);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 12px;
  flex-shrink: 0;
  overflow: hidden;
}

.avd-gemini-msg-avatar.ai {
  background: var(--avd-card);
  border: 1px solid var(--avd-border);
  color: var(--avd-text);
  overflow: hidden;
  padding: 0 !important;
}
.avd-gemini-msg-avatar.ai img {
display: block;
width: 100%;
height: 100%;
object-fit: contain;
padding: 3px;
box-sizing: border-box;
background: var(--avd-card);
}

.avd-gemini-msg-avatar.user {
  background: var(--avd-ink);
  color: var(--avd-bg);
}

.avd-gemini-msg-avatar.user img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.avd-gemini-user-initial {
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 11px;
  font-weight: 800;
  color: var(--avd-bg);
}

.avd-gemini-msg-bubble {
  max-width: 78%;
  padding: 9px 13px;
  border-radius: var(--avd-radius-lg);
  font-size: 12px;
  line-height: 1.55;
}

.avd-gemini-msg.ai .avd-gemini-msg-bubble {
  background: var(--avd-border-soft);
  border: 1px solid var(--avd-border);
  color: var(--avd-text);
  border-top-left-radius: 4px;
}

.avd-gemini-msg.user .avd-gemini-msg-bubble {
  background: var(--avd-ink);
  color: var(--avd-bg);
  border-top-right-radius: 4px;
}

.avd-gemini-typing-dots {
  display: flex;
  gap: 4px;
  padding: 10px 14px;
  background: var(--avd-border-soft);
  border: 1px solid var(--avd-border);
  border-radius: var(--avd-radius-lg);
  border-top-left-radius: 4px;
}

.avd-gemini-typing-dots span {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--avd-text-muted);
  animation: avdTypingDot 1.4s ease infinite;
}

.avd-gemini-typing-dots span:nth-child(2) { animation-delay: 0.2s; }
.avd-gemini-typing-dots span:nth-child(3) { animation-delay: 0.4s; }

@keyframes avdTypingDot {
  0%, 60%, 100% { transform: translateY(0);   opacity: 0.3; }
  30%            { transform: translateY(-5px); opacity: 1;  }
}

.avd-gemini-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-top: 9px;
  padding-top: 9px;
  border-top: 1px solid var(--avd-border-soft);
}

.avd-gemini-action-btn {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 10px;
  border-radius: var(--avd-radius);
  font-size: 10px;
  font-weight: 700;
  cursor: pointer;
  text-decoration: none;
  transition: all 0.15s ease;
  border: 1px solid var(--avd-border);
  background: var(--avd-border-soft);
  color: var(--avd-text);
  white-space: nowrap;
}

.avd-gemini-action-btn:hover {
  border-color: var(--avd-ink-soft);
}

.avd-gemini-chips {
  display: flex;
  gap: 5px;
  flex-wrap: wrap;
  padding: 9px 14px 12px;
  border-top: 1px solid var(--avd-border);
}

.avd-gemini-chip {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 10px;
  border-radius: var(--avd-radius-xl);
  font-size: 10px;
  font-weight: 700;
  color: var(--avd-text-muted);
  background: var(--avd-border-soft);
  border: 1px solid var(--avd-border);
  cursor: pointer;
  transition: all 0.15s ease;
  white-space: nowrap;
}

.avd-gemini-chip:hover {
  color: var(--avd-text);
  border-color: var(--avd-ink-soft);
}

.avd-gemini-input-bar {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  border-top: 1px solid var(--avd-border);
  background: var(--avd-border-soft);
}

.avd-gemini-input {
  flex: 1;
  border: none;
  background: transparent;
  font-size: 12px;
  color: var(--avd-text);
  outline: none;
  font-family: inherit;
}

.avd-gemini-input::placeholder { color: var(--avd-text-faint); }

.avd-gemini-send {
  width: 32px;
  height: 32px;
  border-radius: var(--avd-radius);
  border: none;
  background: var(--avd-ink);
  color: var(--avd-bg);
  font-size: 12px;
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: all 0.18s ease;
  flex-shrink: 0;
}

.avd-gemini-send:hover:not(:disabled) {
  opacity: 0.85;
}

.avd-gemini-send:disabled {
  opacity: 0.4;
  cursor: not-allowed;
}

/* ══════════ VOICE INPUT ══════════ */

.avd-gemini-mic-btn {
display: flex;
align-items: center;
justify-content: center;
width: 34px;
height: 34px;
border-radius: var(--avd-radius);
border: 1px solid var(--avd-border);
background: var(--avd-input-bg);
color: var(--avd-text-faint);
cursor: pointer;
flex-shrink: 0;
transition: all .2s;
font-size: 13px;
}
.avd-gemini-mic-btn:hover {
border-color: var(--avd-ink-soft);
color: var(--avd-text);
}
.avd-gemini-mic-btn.listening {
background: var(--avd-red-bg);
border-color: var(--avd-red);
color: var(--avd-red);
animation: avdMicPulse 1.2s ease-in-out infinite;
}
.avd-gemini-mic-btn.processing {
background: var(--avd-border-soft);
border-color: var(--avd-ink-soft);
color: var(--avd-text);
}
.avd-gemini-mic-btn.speaking {
background: var(--avd-border-soft);
border-color: var(--avd-ink);
color: var(--avd-text);
animation: avdMicSpeaking 1s ease-in-out infinite;
}

@keyframes avdMicPulse {
0%, 100% { box-shadow: 0 0 0 0 rgba(239,68,68,0.35); }
50%      { box-shadow: 0 0 0 6px rgba(239,68,68,0); }
}
@keyframes avdMicSpeaking {
0%, 100% { transform: scale(1); }
50%      { transform: scale(1.08); }
}

.avd-gemini-tts-toggle {
display: flex;
align-items: center;
justify-content: center;
width: 30px;
height: 30px;
border-radius: var(--avd-radius);
border: 1px solid var(--avd-border);
background: var(--avd-input-bg);
color: var(--avd-text-faint);
cursor: pointer;
flex-shrink: 0;
transition: all .2s;
font-size: 11px;
margin-right: 4px;
}
.avd-gemini-tts-toggle:hover {
border-color: var(--avd-ink-soft);
color: var(--avd-text);
}
.avd-gemini-tts-toggle.active {
background: var(--avd-border-soft);
border-color: var(--avd-ink);
color: var(--avd-text);
}

.avd-gemini-mic-transcript {
font-size: 11px;
color: var(--avd-text-faint);
padding: 4px 10px 0;
display: none;
align-items: center;
gap: 6px;
margin: 0;
background: transparent;
border: none;
border-radius: 0;
}
.avd-gemini-mic-transcript.active { display: flex; }
.avd-gemini-mic-transcript i { color: var(--avd-red); font-size: 9px; }

.avd-gemini-send-spinner {
display: inline-block;
width: 14px;
height: 14px;
border: 2px solid rgba(255, 255, 255, 0.3);
border-top-color: currentColor;
border-radius: 50%;
animation: avdGeminiSpin 0.7s linear infinite;
}

@keyframes avdGeminiSpin {
to { transform: rotate(360deg); }
}

/* ══════════════════════════════════════════════════════════
     ALPHAVAULT DRIVE v2.0 — Compléments (monochrome)
  ══════════════════════════════════════════════════════════ */

  #avdGlobalDropOverlay { animation: avdFadeIn .15s ease; }
  .avd-drop-overlay-content {
      display:flex; flex-direction:column; align-items:center; gap:14px;
      color: var(--avd-text); font-size:18px; font-weight:800; text-align:center;
  }
  .avd-drop-overlay-content i { font-size:56px; }

  .avd-upload-toast {
      position:fixed; bottom:24px; right:24px; z-index:99998;
      background: var(--avd-card); border:1px solid var(--avd-border);
      color: var(--avd-text); padding:12px 18px; border-radius: var(--avd-radius-lg);
      font-size:12px; font-weight:600; display:flex; align-items:center; gap:10px;
      box-shadow: var(--avd-shadow-lg);
  }

  .avd-section-label {
      font-size:12px; font-weight:800; color: var(--avd-text-faint); text-transform:uppercase;
      letter-spacing:.6px; margin:14px 0 10px; display:flex; align-items:center; gap:8px;
  }
  .avd-folder-grid {
      display:grid; grid-template-columns:repeat(auto-fill, minmax(220px,1fr)); gap:10px;
  }
  .avd-folder-card {
      display:flex; align-items:center; gap:10px; padding:12px 14px;
      background: var(--avd-card); border:1px solid var(--avd-border);
      border-radius: var(--avd-radius-lg); cursor:pointer; transition:all .18s; position:relative;
  }
  .avd-folder-card:hover { border-color: var(--avd-ink-soft); }
  .avd-folder-icon { font-size:26px; flex-shrink:0; position:relative; color: var(--avd-text); }
  .avd-shared-dot {
      position:absolute; top:-4px; right:-4px; width:14px; height:14px;
      background: var(--avd-ink); border-radius:50%; display:flex; align-items:center; justify-content:center;
  }
  .avd-shared-dot i { font-size:6px; color: var(--avd-bg); }
  .avd-folder-info { flex:1; min-width:0; }
  .avd-folder-name { font-size:12px; font-weight:700; color: var(--avd-text); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .avd-folder-meta { font-size:10px; color: var(--avd-text-faint); }
  .avd-folder-actions { display:flex; gap:4px; opacity:0; transition:opacity .15s; }
  .avd-folder-card:hover .avd-folder-actions { opacity:1; }
  .avd-folder-actions button {
      width:24px; height:24px; border:none; border-radius: var(--avd-radius); background: var(--avd-border-soft);
      color: var(--avd-text-muted); cursor:pointer; font-size:10px;
  }
  .avd-folder-actions button:hover { color: var(--avd-text); }
  .avd-folder-actions button.danger:hover { background: var(--avd-red-bg); color: var(--avd-red); }

  .avd-file-grid { display:grid; grid-template-columns:repeat(auto-fill, minmax(180px,1fr)); gap:12px; }
  .avd-file-card {
      background: var(--avd-card); border:1px solid var(--avd-border);
      border-radius: var(--avd-radius-lg); overflow:hidden; cursor:pointer; transition:all .18s; position:relative;
  }
  .avd-file-card:hover { border-color: var(--avd-ink-soft); transform:translateY(-2px); }
  .avd-file-card.selected { border-color: var(--avd-ink); }
  .avd-file-card-thumb {
      height:90px; display:flex; align-items:center; justify-content:center; position:relative;
      background: var(--avd-border-soft); color: var(--avd-text-muted);
  }
  .avd-file-card-check {
      position:absolute; top:8px; left:8px; width:18px; height:18px; border-radius:5px;
      border:1.5px solid var(--avd-border); background:rgba(0,0,0,0.3);
      display:flex; align-items:center; justify-content:center; font-size:10px; color:#fff; cursor:pointer;
  }
  .avd-file-card-fav {
      position:absolute; top:8px; right:8px; width:18px; height:18px; border-radius:50%;
      display:flex; align-items:center; justify-content:center; font-size:11px; color:rgba(255,255,255,0.6); cursor:pointer;
  }
  .avd-file-card-fav.active { color:#ffffff; }
  .avd-file-card-body { padding:9px 11px; }
  .avd-file-card-name { font-size:12px; font-weight:700; color: var(--avd-text); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; margin-bottom:3px; }
  .avd-file-card-meta { font-size:10px; color: var(--avd-text-faint); display:flex; gap:5px; }
  .avd-file-card-actions { display:flex; gap:4px; padding:0 11px 10px; opacity:0; transition:opacity .15s; }
  .avd-file-card:hover .avd-file-card-actions { opacity:1; }
  .avd-file-card-actions button {
      flex:1; height:26px; border:1px solid var(--avd-border); border-radius: var(--avd-radius); background: var(--avd-border-soft);
      color: var(--avd-text-muted); font-size:10px; cursor:pointer;
  }
  .avd-file-card-actions button.open { background: var(--avd-ink); color: var(--avd-bg); border-color: var(--avd-ink); }
  .avd-file-card-actions button.danger:hover { background: var(--avd-red-bg); color: var(--avd-red); }

  .avd-table-wrap { border:1px solid var(--avd-border); border-radius: var(--avd-radius-lg); overflow:hidden; }
  .avd-table-header, .avd-row {
      display:grid; grid-template-columns:32px 1fr 110px 110px 90px 90px 160px;
      align-items:center; gap:10px; padding:9px 14px;
  }
  .avd-table-header { background: var(--avd-border-soft); font-size:10px; font-weight:800; color: var(--avd-text-faint); text-transform:uppercase; }
  .avd-row { border-top:1px solid var(--avd-border-soft); cursor:pointer; font-size:12px; color: var(--avd-text); }
  .avd-row:hover { background: var(--avd-border-soft); }
  .avd-row.selected { background: var(--avd-border-soft); }
  .avd-row-check { width:16px; height:16px; border-radius:4px; border:1.5px solid var(--avd-border); cursor:pointer; }
  .avd-row-name { display:flex; align-items:center; gap:10px; min-width:0; }
  .avd-row-icon { flex-shrink:0; }
  .avd-row-title { font-weight:600; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
  .avd-row-sub { font-size:10px; color: var(--avd-text-faint); }
  .avd-row-cell { font-size:11px; color: var(--avd-text-muted); }
  .avd-row-actions { display:flex; gap:4px; }
  .avd-row-actions button {
      width:24px; height:24px; border:none; border-radius: var(--avd-radius); background: var(--avd-border-soft);
      color: var(--avd-text-muted); cursor:pointer; font-size:10px;
  }
  .avd-row-actions button:hover { color: var(--avd-text); }
  .avd-row-actions button.danger:hover { background: var(--avd-red-bg); color: var(--avd-red); }

  .avd-type-badge { font-size:9px; font-weight:800; padding:2px 8px; border-radius: var(--avd-radius-xl); text-transform:uppercase; background: var(--avd-border-soft); color: var(--avd-text-muted); border: 1px solid var(--avd-border); }

  #avdSelectBar {
      position:fixed; bottom:24px; left:50%; transform:translateX(-50%); z-index:9000;
      display:none; align-items:center; gap:10px; background: var(--avd-card);
      border:1px solid var(--avd-border); border-radius: var(--avd-radius-lg); padding:10px 16px;
      box-shadow: var(--avd-shadow-lg);
  }
  #avdSelectBar span#avdSelectedCount { font-size:12px; font-weight:700; color: var(--avd-text); margin-right:6px; }
  #avdSelectBar button {
      background: var(--avd-border-soft); border:1px solid var(--avd-border); color: var(--avd-text); padding:7px 12px;
      border-radius: var(--avd-radius); font-size:11px; font-weight:600; cursor:pointer; display:flex; align-items:center; gap:6px;
  }
  #avdSelectBar button:hover { border-color: var(--avd-ink-soft); }
  #avdSelectBar button.danger:hover { background: var(--avd-red-bg); color: var(--avd-red); border-color: var(--avd-red); }

  #avdPanel {
      position:fixed; top:0; right:-360px; width:340px; height:100vh; background: var(--avd-sidebar-bg);
      border-left:1px solid var(--avd-border); z-index:8000; transition:right .25s ease;
      overflow-y:auto;
  }
  #avdPanel.open { right:0; }
  .avd-panel-thumb { height:140px; display:flex; align-items:center; justify-content:center; background: var(--avd-border-soft); }
  .avd-details-row { display:flex; justify-content:space-between; padding:8px 0; border-bottom:1px solid var(--avd-border-soft); font-size:12px; }
  .avd-details-row span:first-child { color: var(--avd-text-muted); font-weight:700; }
  .avd-details-row span:last-child { color: var(--avd-text); font-weight:600; }

  .avd-move-item {
      display:flex; align-items:center; gap:10px; padding:10px 14px; border-radius: var(--avd-radius);
      cursor:pointer; margin-bottom:4px; border:1px solid var(--avd-border);
      font-size:13px; color: var(--avd-text);
  }
  .avd-move-item:hover { background: var(--avd-border-soft); border-color: var(--avd-ink-soft); }

  .avd-search-result { display:flex; align-items:center; gap:10px; padding:8px 12px; cursor:pointer; border-radius: var(--avd-radius); }
  .avd-search-result:hover { background: var(--avd-border-soft); }

  .avd-empty { text-align:center; padding:50px 16px; grid-column:1/-1; }
  .avd-empty-icon { font-size:36px; color: var(--avd-text-faint); margin-bottom:14px; display:block; opacity: .5; }
  .avd-empty-title { font-size:14px; font-weight:700; color: var(--avd-text-muted); margin-bottom:6px; }
  .avd-empty-sub { font-size:12px; color: var(--avd-text-faint); }

  .avd-ring {
      width:14px; height:14px; border-radius:50%; border:2px solid var(--avd-border);
      border-top-color: var(--avd-ink); animation:avdSpin .8s linear infinite; display:inline-block;
  }
  .avd-ring-sm { width:12px; height:12px; }
  @keyframes avdSpin { to { transform:rotate(360deg); } }

  .avd-access-row {
      display:flex; align-items:center; gap:10px; padding:8px 0;
      border-bottom:1px solid var(--avd-border-soft);
  }

  .avd-folder-style-swatch {
    aspect-ratio: 1; border-radius: var(--avd-radius); display:flex; align-items:center; justify-content:center;
    cursor:pointer; font-size:16px; color: var(--avd-bg); border:2px solid transparent;
    background: var(--avd-ink);
    transition: all .15s; opacity:.7;
}
.avd-folder-style-swatch:hover { opacity:1; transform:scale(1.06); }
.avd-folder-style-swatch.active {
    opacity:1; border-color: var(--avd-text); box-shadow: var(--avd-shadow);
    transform:scale(1.05);
}

/* ── Thinking Block ── */
.aa-think { margin-bottom: 12px; border: 1px solid var(--avd-border); border-radius: var(--avd-radius-lg); background: var(--avd-card); overflow: hidden; transition: border-color .25s ease, box-shadow .25s ease; }
.aa-think.is-active { border-color: var(--avd-ink-soft); box-shadow: var(--avd-shadow); }
.aa-think-header { display: flex; align-items: center; gap: 10px; width: 100%; padding: 10px 14px; background: transparent; border: none; cursor: pointer; font-family: inherit; text-align: left; }
.aa-think-header:hover { background: var(--avd-border-soft); }
.aa-think-icon { position: relative; width: 20px; height: 20px; display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.aa-think-ring { position: absolute; inset: -3px; border-radius: 50%; border: 1.6px solid var(--avd-border); border-top-color: var(--avd-text); animation: aaRingSpin 0.85s linear infinite; opacity: 1; transition: opacity .3s ease; }
.aa-think:not(.is-active) .aa-think-ring { opacity: 0; }
@keyframes aaRingSpin { to { transform: rotate(360deg); } }
.aa-think-logo { width: 13px; height: 13px; object-fit: contain; display: block; filter: grayscale(100%) contrast(1.1); opacity: 0.85; }
.aa-think-label { flex: 1; font-size: 12.5px; font-weight: 600; color: var(--avd-text); letter-spacing: 0.1px; display: flex; align-items: center; gap: 2px; }
.aa-think-dots { display: inline-flex; gap: 2px; margin-left: 2px; }
.aa-think-dots i { width: 3px; height: 3px; border-radius: 50%; background: var(--avd-text-muted); animation: aaThinkDot 1.1s ease-in-out infinite; display: inline-block; }
.aa-think-dots i:nth-child(2) { animation-delay: .15s; }
.aa-think-dots i:nth-child(3) { animation-delay: .3s; }
.aa-think:not(.is-active) .aa-think-dots { display: none; }
@keyframes aaThinkDot { 0%,80%,100% { opacity: .25; transform: translateY(0); } 40% { opacity: 1; transform: translateY(-1.5px); } }
.aa-think-chev { font-size: 10px; color: var(--avd-text-muted); transition: transform .25s ease; flex-shrink: 0; }
.aa-think.is-open .aa-think-chev { transform: rotate(180deg); }
.aa-think-body { max-height: 0; overflow: hidden; transition: max-height .35s cubic-bezier(.4,0,.2,1); }
.aa-think.is-open .aa-think-body { max-height: 260px; overflow-y: auto; }
.aa-think-text { padding: 2px 14px 14px 42px; font-size: 12px; line-height: 1.65; color: var(--avd-text-muted); font-style: italic; white-space: pre-wrap; border-top: 1px solid var(--avd-border-soft); margin-top: 2px; padding-top: 10px; }

.avd-gemini-mic-transcript{display:none;align-items:center;gap:8px;padding:8px 14px;margin:0 0 8px;
  background:rgba(102,126,234,0.08);border:1px solid rgba(102,126,234,0.2);border-radius:10px;
  font-size:12px;color:#a5b4fc;}
.avd-gemini-mic-transcript.active{display:flex;}
.avd-gemini-mic-btn.listening{color:#ef4444 !important;animation:avdMicPulse 1.2s infinite;}
.avd-gemini-mic-btn.speaking{color:#10b981 !important;}
.avd-gemini-mic-btn.processing{color:#f59e0b !important;}
@keyframes avdMicPulse{0%,100%{opacity:1;}50%{opacity:.5;}}

/* ══════════════════════════════════
   FIX 1 — Sidebar tools centrés quand collapsed
══════════════════════════════════ */
#avdSidebar.collapsed .avd-nav-tool-link{
  justify-content:center !important;
  padding:10px 0 !important;
  gap:0 !important;
}
#avdSidebar.collapsed .avd-nav-tool-link .avd-nav-item-text,
#avdSidebar.collapsed .avd-nav-tool-link .avd-nav-tool-badge{
  display:none !important;
}
#avdSidebar.collapsed .avd-nav-tool-icon,
#avdSidebar.collapsed .avd-nav-tool-icon.ide{
  margin:0 auto !important;
}
#avdSidebar.collapsed .avd-nav-item{
  justify-content:center !important;
  padding-left:0 !important;
  padding-right:0 !important;
}
#avdSidebar.collapsed .avd-nav-item-icon{
  margin:0 auto !important;
}

/* ══════════════════════════════════
 FIX 2 — User dropdown header : blanc cassé en light mode
══════════════════════════════════ */
body.light-mode #avdUserMenu{
  background:#f8fafc !important;
  border:1px solid rgba(15,23,42,0.08) !important;
  box-shadow:0 20px 60px rgba(15,23,42,0.12) !important;
}
body.light-mode #avdUserMenu #avdMenuUserName{ color:#0f172a !important; }
body.light-mode #avdUserMenu #avdMenuUserEmail{ color:#64748b !important; }
body.light-mode #avdUserMenu .avd-ctx-item{ color:#334155 !important; }
body.light-mode #avdUserMenu .avd-ctx-item:hover{ background:rgba(15,23,42,0.05) !important; }
body.light-mode #avdUserMenu .avd-ctx-item.danger{ color:#dc2626 !important; }
body.light-mode #avdUserMenu hr{ border-top-color:rgba(15,23,42,0.08) !important; }

/* Sidebar footer dropdown (bas de sidebar) — même correctif */
body.light-mode #avdSidebarUserDropdown{
  background:#f8fafc !important;
  border:1px solid rgba(15,23,42,0.08) !important;
}
body.light-mode #avdSidebarUserDropdown #avdDropdownName{ color:#0f172a !important; }
body.light-mode #avdSidebarUserDropdown #avdDropdownEmail{ color:#64748b !important; }
body.light-mode .avd-sidebar-dropdown-link{ color:#334155 !important; }
body.light-mode .avd-sidebar-dropdown-link:hover{ background:rgba(15,23,42,0.05) !important; }

/* ══════════════════════════════════
 FIX 3 — Texte lisible dans le dropdown "New" en light mode
══════════════════════════════════ */
body.light-mode .avd-new-dropdown{
  background:#ffffff !important;
  border:1px solid rgba(15,23,42,0.08) !important;
  box-shadow:0 20px 50px rgba(15,23,42,0.15) !important;
}
body.light-mode .avd-new-drop-item > div > div:first-child{ color:#0f172a !important; }
body.light-mode .avd-new-drop-item > div > div:last-child{ color:#64748b !important; }
body.light-mode .avd-new-drop-item:hover{ background:rgba(15,23,42,0.04) !important; }
body.light-mode .avd-new-drop-divider{ border-top-color:rgba(15,23,42,0.08) !important; }

/* ══════════════════════════════════
 FIX 4 — Access/Share modal — style cohérent page (dark glass, mais adapté light mode aussi)
══════════════════════════════════ */
.avd-access-modal{max-width:480px;}
.avd-access-row{display:flex;align-items:center;gap:10px;padding:8px 4px;
  border-bottom:1px solid rgba(255,255,255,0.06);}
.avd-access-row:last-child{border-bottom:none;}
body.light-mode .avd-access-row{border-bottom-color:rgba(15,23,42,0.06);}
body.light-mode #avdAccessUsersList div[style*="color:#e2e8f0"]{color:#0f172a !important;}

body.light-mode #avdAccessModal .avd-modal{ background:#ffffff !important; }
body.light-mode #avdAccessModal .avd-modal-header{ background:rgba(102,126,234,0.06) !important; }
body.light-mode #avdAccessModal .avd-modal-title{ color:#0f172a !important; }
body.light-mode #avdAccessSearchResults{
  background:#ffffff !important;
  border:1px solid rgba(15,23,42,0.1) !important;
}

/* ══════════════════════════════════
 FIX 5 — Audit Log panel (nouveau)
══════════════════════════════════ */
.avd-audit-modal{max-width:640px;}
.avd-audit-list{max-height:420px;overflow-y:auto;}
.avd-audit-row{display:flex;align-items:flex-start;gap:12px;padding:12px 6px;
  border-bottom:1px solid rgba(255,255,255,0.06);}
body.light-mode .avd-audit-row{border-bottom-color:rgba(15,23,42,0.06);}
.avd-audit-row:last-child{border-bottom:none;}
.avd-audit-icon{width:32px;height:32px;border-radius:10px;flex-shrink:0;
  display:flex;align-items:center;justify-content:center;font-size:13px;}
.avd-audit-icon.view{background:rgba(102,126,234,0.12);color:#667eea;}
.avd-audit-icon.update{background:rgba(245,158,11,0.12);color:#f59e0b;}
.avd-audit-icon.create{background:rgba(16,185,129,0.12);color:#10b981;}
.avd-audit-icon.delete{background:rgba(239,68,68,0.12);color:#ef4444;}
.avd-audit-icon.share{background:rgba(139,92,246,0.12);color:#8b5cf6;}
.avd-audit-icon.rename,.avd-audit-icon.duplicate,.avd-audit-icon.upload,.avd-audit-icon.move{
  background:rgba(6,182,212,0.12);color:#06b6d4;}
.avd-audit-info{flex:1;min-width:0;}
.avd-audit-action{font-size:12px;font-weight:700;color:#e2e8f0;}
body.light-mode .avd-audit-action{color:#0f172a;}
.avd-audit-meta{font-size:10px;color:#64748b;margin-top:2px;}
.avd-audit-time{font-size:10px;color:#475569;flex-shrink:0;white-space:nowrap;}
.avd-file-card-actions button.audit-btn,
.avd-row-actions button.audit-btn{color:#8b5cf6;}

/* ══════════════════════════════════════════════════════════
   ACCESS / SHARE MODAL — v2.0 (design propre, sans scroll parasite)
══════════════════════════════════════════════════════════ */
#avdAccessModal .avd-modal.avd-access-modal{
  max-width:460px;
  width:calc(100% - 32px);
  max-height:calc(100vh - 64px);
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border-radius:20px;
  background:#ffffff;
  box-shadow:0 24px 70px rgba(15,23,42,0.25);
}
body.dark-mode #avdAccessModal .avd-modal.avd-access-modal,
#avdAccessModal .avd-modal.avd-access-modal.dark{
  background:#1e293b;
}

/* Header */
#avdAccessModal .avd-modal-header{
  flex-shrink:0;
  background:linear-gradient(135deg,rgba(102,126,234,0.08),rgba(118,75,162,0.05));
  border-bottom:1px solid rgba(15,23,42,0.08);
  padding:18px 20px;
}
body.dark-mode #avdAccessModal .avd-modal-header{
  border-bottom-color:rgba(255,255,255,0.08);
}
#avdAccessModal .avd-modal-title{
  color:#0f172a;
  font-size:15px;
  font-weight:800;
}
body.dark-mode #avdAccessModal .avd-modal-title{ color:#f1f5f9; }
#avdAccessModal #avdAccessModalSub{ color:#64748b; }

/* Body — scroll UNIQUEMENT vertical, jamais horizontal */
#avdAccessModal .avd-modal-body{
  flex:1;
  min-height:0;
  overflow-y:auto;
  overflow-x:hidden;
  padding:18px 20px;
  box-sizing:border-box;
}

/* Section titles */
#avdAccessModal .avd-details-section-title{
  color:#0f172a;
  font-size:12px;
  font-weight:800;
  display:flex;
  align-items:center;
  margin-bottom:10px;
}
body.dark-mode #avdAccessModal .avd-details-section-title{ color:#e2e8f0; }

/* People with access */
#avdAccessModal #avdAccessCount{ color:#94a3b8; }
#avdAccessModal #avdAccessUsersList{
  background:rgba(15,23,42,0.02);
  border:1px solid rgba(15,23,42,0.06);
  border-radius:12px;
  padding:6px 10px;
  margin-bottom:4px;
}
body.dark-mode #avdAccessModal #avdAccessUsersList{
  background:rgba(255,255,255,0.03);
  border-color:rgba(255,255,255,0.08);
}
#avdAccessModal .avd-access-row{
  display:flex;align-items:center;gap:10px;
  padding:9px 2px;
  border-bottom:1px solid rgba(15,23,42,0.06);
}
body.dark-mode #avdAccessModal .avd-access-row{ border-bottom-color:rgba(255,255,255,0.06); }
#avdAccessModal .avd-access-row:last-child{ border-bottom:none; }
#avdAccessModal .avd-access-row > div:nth-child(2) > div:first-child{ color:#0f172a; }
body.dark-mode #avdAccessModal .avd-access-row > div:nth-child(2) > div:first-child{ color:#e2e8f0; }
#avdAccessModal .avd-access-row > div:nth-child(2) > div:last-child{ color:#94a3b8; }
#avdAccessModal .avd-access-row select{
  background:#ffffff;
  color:#0f172a;
  border:1px solid rgba(15,23,42,0.12);
  border-radius:8px;
  max-width:80px;
  box-sizing:border-box;
}
body.dark-mode #avdAccessModal .avd-access-row select{
  background:#0f172a; color:#e2e8f0; border-color:rgba(255,255,255,0.12);
}

/* Add people section */
#avdAccessModal .avd-access-add-section{
  background:rgba(15,23,42,0.02);
  border:1px solid rgba(15,23,42,0.06);
  border-radius:14px;
  padding:14px;
  box-sizing:border-box;
}
body.dark-mode #avdAccessModal .avd-access-add-section{
  background:rgba(255,255,255,0.03);
  border-color:rgba(255,255,255,0.08);
}

#avdAccessModal .avd-input{
  background:#ffffff;
  color:#0f172a;
  border:1.5px solid rgba(15,23,42,0.12);
  border-radius:10px;
  font-size:13px;
  padding:10px 12px;
  box-sizing:border-box;
  width:100%;
}
#avdAccessModal .avd-input::placeholder{ color:#94a3b8; }
#avdAccessModal .avd-input:focus{
  outline:none;
  border-color:#667eea;
  box-shadow:0 0 0 3px rgba(102,126,234,0.12);
}
body.dark-mode #avdAccessModal .avd-input{
  background:#0f172a; color:#e2e8f0; border-color:rgba(255,255,255,0.12);
}

/* Zone de recherche users — évite tout débordement horizontal */
#avdAccessModal > .avd-modal > .avd-modal-body div[style*="position:relative"]{
  width:100%;
  box-sizing:border-box;
}
#avdAccessSearchResults{
  background:#ffffff !important;
  border:1px solid rgba(15,23,42,0.1) !important;
  box-shadow:0 12px 32px rgba(15,23,42,0.15) !important;
  box-sizing:border-box;
  width:100%;
  max-width:100%;
}
body.dark-mode #avdAccessSearchResults{
  background:#0f172a !important;
  border-color:rgba(255,255,255,0.1) !important;
}
#avdAccessSearchResults > div{ color:#0f172a; }
body.dark-mode #avdAccessSearchResults > div{ color:#e2e8f0; }
#avdAccessSearchResults > div:hover{ background:rgba(15,23,42,0.04) !important; }
body.dark-mode #avdAccessSearchResults > div:hover{ background:rgba(255,255,255,0.05) !important; }

#avdAccessModal select#avdAccessPermSelect{
  background:#ffffff;color:#0f172a;
  border:1.5px solid rgba(15,23,42,0.12);
  border-radius:10px;
  padding:0 10px;
  font-size:13px;
  box-sizing:border-box;
}
body.dark-mode #avdAccessModal select#avdAccessPermSelect{
  background:#0f172a;color:#e2e8f0;border-color:rgba(255,255,255,0.12);
}

/* Footer */
#avdAccessModal .avd-modal-footer{
  flex-shrink:0;
  background:rgba(15,23,42,0.02);
  border-top:1px solid rgba(15,23,42,0.08);
  padding:14px 20px;
}
body.dark-mode #avdAccessModal .avd-modal-footer{
  background:rgba(255,255,255,0.02);
  border-top-color:rgba(255,255,255,0.08);
}
#avdAccessModal .avd-modal-footer > div{ color:#94a3b8; }

/* Enterprise banner */
#avdEnterpriseBanner{ box-sizing:border-box; width:100%; }

/* ══ FIX — Ligne "Add" (select permission + bouton +) qui déborde du modal ══ */
#avdAccessModal .avd-access-add-section > div[style*="display:flex"]{
  display:flex;
  gap:8px;
  width:100%;
  box-sizing:border-box;
  align-items:stretch;
}
#avdAccessModal select#avdAccessPermSelect{
  flex:0 0 auto;
  width:auto;
  min-width:90px;
  max-width:110px;
  box-sizing:border-box;
}
#avdAccessModal .avd-access-add-section .avd-btn{
  flex:1;
  min-width:0;
  box-sizing:border-box;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}

/* Sécurité générale : aucun enfant du modal ne peut dépasser sa largeur */
#avdAccessModal .avd-modal *{
  box-sizing:border-box;
  max-width:100%;
}
#avdAccessModal .avd-modal{
  overflow:hidden; /* empêche tout débordement visuel du contenu enfant */
}

/* ══════════════════════════════════════════════════════════════
   28. GLASS SILVER SYSTEM — Harmonisation avec landing-institutional
   Boutons + Hero Card en verre argenté dégradé (light & dark)
══════════════════════════════════════════════════════════════ */

:root{
  --avd-glass-bg:        rgba(255,255,255,.10);
  --avd-glass-bg-hover:  rgba(255,255,255,.18);
  --avd-glass-border:    rgba(255,255,255,.22);
  --avd-glass-border-hv: rgba(255,255,255,.38);
  --avd-glass-shadow:    0 8px 24px rgba(0,0,0,.18);
  --avd-glass-inset:     inset 0 1px 0 rgba(255,255,255,.14);
  --avd-glass-grad:      linear-gradient(135deg, rgba(255,255,255,.22), rgba(203,213,225,.06));
  --avd-glass-grad-hv:   linear-gradient(135deg, rgba(255,255,255,.30), rgba(203,213,225,.10));
}

body.light-mode{
  --avd-glass-bg:        rgba(10,10,10,.05);
  --avd-glass-bg-hover:  rgba(10,10,10,.09);
  --avd-glass-border:    rgba(10,10,10,.12);
  --avd-glass-border-hv: rgba(10,10,10,.22);
  --avd-glass-shadow:    0 8px 20px rgba(0,0,0,.08);
  --avd-glass-inset:     inset 0 1px 0 rgba(255,255,255,.6);
  --avd-glass-grad:      linear-gradient(135deg, rgba(255,255,255,.9), rgba(226,232,240,.55));
  --avd-glass-grad-hv:   linear-gradient(135deg, rgba(255,255,255,1), rgba(226,232,240,.75));
}

/* ── Boutons primaires — verre argenté dégradé ─────────────────── */
.avd-btn-primary,
.avd-new-btn,
.avd-file-action-btn.open,
.avd-panel-action-btn.primary,
.avd-sp-cmd-btn.primary,
.avd-gemini-send,
.avd-mcp-send{
  background: var(--avd-glass-grad) !important;
  color: var(--avd-text) !important;
  border: 1px solid var(--avd-glass-border) !important;
  backdrop-filter: blur(14px) saturate(160%);
  -webkit-backdrop-filter: blur(14px) saturate(160%);
  box-shadow: var(--avd-glass-inset), var(--avd-glass-shadow);
  position: relative;
  overflow: hidden;
  transition: var(--avd-transition);
}
.avd-btn-primary::before,
.avd-new-btn::before,
.avd-panel-action-btn.primary::before,
.avd-sp-cmd-btn.primary::before{
  content:'';
  position:absolute; top:0; left:0; right:0; height:1px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.55), transparent);
  pointer-events:none;
}
.avd-btn-primary:hover,
.avd-new-btn:hover,
.avd-file-action-btn.open:hover,
.avd-panel-action-btn.primary:hover,
.avd-sp-cmd-btn.primary:hover,
.avd-gemini-send:hover:not(:disabled),
.avd-mcp-send:hover{
  background: var(--avd-glass-grad-hv) !important;
  border-color: var(--avd-glass-border-hv) !important;
  transform: translateY(-1px);
  box-shadow: var(--avd-glass-inset), 0 12px 32px rgba(0,0,0,.22);
  opacity: 1 !important;
}

/* ── Boutons secondaires / header / outline — verre plus léger ──── */
.avd-btn-secondary,
.avd-header-btn,
.avd-theme-toggle,
.avd-view-toggle,
.avd-view-btn,
.avd-filter-tab,
.avd-sort-option,
.avd-file-action-btn:not(.open),
.avd-folder-action-btn,
.avd-panel-action-btn:not(.primary),
.avd-select-action,
.avd-mcp-chip,
.avd-mcp-open-link,
.avd-gemini-chip,
.avd-gemini-tts-toggle,
.avd-gemini-mic-btn,
.avd-sp-cmd-btn:not(.primary),
.avd-home-shortcut,
.avd-sidebar-toggle,
.avd-mobile-close-btn,
.avd-mcp-full-btn,
.avd-access-remove-btn,
.avd-file-row-btn,
.avd-sp-act-btn,
.avd-row-actions button,
.avd-folder-actions button{
  background: var(--avd-glass-bg) !important;
  border: 1px solid var(--avd-glass-border) !important;
  color: var(--avd-text-muted) !important;
  backdrop-filter: blur(10px) saturate(150%);
  -webkit-backdrop-filter: blur(10px) saturate(150%);
  box-shadow: var(--avd-glass-inset);
  transition: var(--avd-transition);
}
.avd-btn-secondary:hover,
.avd-header-btn:hover,
.avd-theme-toggle:hover,
.avd-view-btn:hover,
.avd-filter-tab:hover,
.avd-sort-option:hover,
.avd-file-action-btn:not(.open):hover,
.avd-folder-action-btn:hover,
.avd-panel-action-btn:not(.primary):hover,
.avd-select-action:hover,
.avd-mcp-chip:hover,
.avd-mcp-open-link:hover,
.avd-gemini-chip:hover,
.avd-gemini-tts-toggle:hover,
.avd-gemini-mic-btn:hover,
.avd-sp-cmd-btn:not(.primary):hover,
.avd-home-shortcut:hover,
.avd-sidebar-toggle:hover,
.avd-mcp-full-btn:hover,
.avd-file-row-btn:hover,
.avd-sp-act-btn:hover,
.avd-row-actions button:hover,
.avd-folder-actions button:hover{
  background: var(--avd-glass-bg-hover) !important;
  border-color: var(--avd-glass-border-hv) !important;
  color: var(--avd-text) !important;
}

/* États actifs (view toggle, filter tab, sort option…) restent lisibles */
.avd-view-btn.active,
.avd-filter-tab.active,
.avd-sort-option.active,
.avd-access-tab.active{
  background: var(--avd-glass-grad) !important;
  color: var(--avd-text) !important;
  border-color: var(--avd-glass-border-hv) !important;
  box-shadow: var(--avd-glass-inset), var(--avd-glass-shadow);
}

/* Boutons danger conservent leur rouge, mais avec le glass en base */
.avd-file-action-btn.delete:hover,
.avd-folder-action-btn.delete:hover,
.avd-file-row-btn.delete:hover,
.avd-select-action.danger:hover,
.avd-sp-act-btn.danger:hover,
.avd-ctx-item.danger:hover{
  background: var(--avd-red-bg) !important;
  color: var(--avd-red) !important;
  border-color: var(--avd-red) !important;
}

/* Sidebar toggle rond + mobile close — même traitement verre */
.avd-sidebar-toggle,
.avd-mobile-close-btn{
  box-shadow: var(--avd-glass-inset), var(--avd-glass-shadow);
}
.avd-mobile-close-btn:hover{
  background: var(--avd-red-bg) !important;
  border-color: var(--avd-red) !important;
  color: var(--avd-red) !important;
}

/* ══════════════════════════════════════════════════════════════
 29. HERO CARD "Good morning" — verre argenté dégradé
══════════════════════════════════════════════════════════════ */
.avd-home-hero{
  background: var(--avd-glass-grad) !important;
  border: 1px solid var(--avd-glass-border) !important;
  backdrop-filter: blur(18px) saturate(170%);
  -webkit-backdrop-filter: blur(18px) saturate(170%);
  box-shadow: var(--avd-glass-inset), var(--avd-glass-shadow);
  position: relative;
  overflow: hidden;
}
.avd-home-hero::before{
  content:'';
  position:absolute; top:0; left:0; right:0; height:1px;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.5), transparent);
  pointer-events:none;
}

/* ══════════════════════════════════════════════════════════════
 30. AI ASSISTANT SECTION — top bar en léger verre argenté
══════════════════════════════════════════════════════════════ */
.avd-gemini-section::before{
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.5), transparent) !important;
  opacity: 1 !important;
}

/* ══════════════════════════════════════════════════════════════
   31. SIDEBAR NAV — Glass argenté (Home, All Files, Recent, etc.)
══════════════════════════════════════════════════════════════ */

.avd-nav-item:hover,
.avd-nav-tool-link:hover,
.avd-platform-folder:hover,
.avd-platform-link:hover,
.avd-platform-link.active,
.avd-nav-subfolder:hover,
.avd-sidebar-user-trigger:hover{
    background: var(--avd-glass-bg) !important;
    backdrop-filter: blur(8px) saturate(150%);
    -webkit-backdrop-filter: blur(8px) saturate(150%);
}

/* Item actif ("Home" sélectionné) = glass argenté dégradé au lieu du noir plein */
.avd-nav-item.active{
    background: var(--avd-glass-grad) !important;
    color: var(--avd-text) !important;
    border: 1px solid var(--avd-glass-border-hv);
    box-shadow: var(--avd-glass-inset), var(--avd-glass-shadow);
    backdrop-filter: blur(10px) saturate(160%);
    -webkit-backdrop-filter: blur(10px) saturate(160%);
}
.avd-nav-item.active .avd-nav-item-icon,
.avd-nav-item.active .avd-nav-item-text{
    color: var(--avd-text) !important;
}
.avd-nav-item.active .avd-nav-badge{
    background: rgba(255,255,255,.16) !important;
    color: var(--avd-text) !important;
    border-color: var(--avd-glass-border);
}

/* Folder ouvert (sections Platform) */
.avd-platform-folder.open{
    background: var(--avd-glass-bg) !important;
    color: var(--avd-text) !important;
}

/* Badges de navigation (IDE, ENT...) gardent un fond verre léger */
.avd-nav-tool-badge,
.nav-badge-pill{
    background: var(--avd-glass-bg) !important;
    border-color: var(--avd-glass-border) !important;
    color: var(--avd-text) !important;
}

/* Icônes des liens tools */
.avd-nav-tool-icon{
    backdrop-filter: blur(6px);
}