/* ============================================================
   specifique2 — onglet « Edwige » (assistante / boîte unique). Config = table settings.
   Volet gauche standard (répliqué d'Accès/Flotte).
   ============================================================ */
.ass-tab { padding: 0; height: 100%; display: flex; flex-direction: column; }

.ass-toolbar {
  display: flex; gap: .7rem; align-items: center; padding: .55rem .9rem;
  min-height: 3.15rem;
  background: rgba(24,24,27,.22); border-bottom: 1px solid rgba(255,255,255,.1);
  flex-wrap: wrap; backdrop-filter: blur(24px) saturate(180%);
  -webkit-backdrop-filter: blur(24px) saturate(180%);
}
.ass-toolbar .ass-title {
  font-family: 'Menlo','Consolas',monospace; font-size: .9rem; font-weight: 700; color: var(--p-soft);
  letter-spacing: .04em; display: inline-flex; align-items: center; gap: .45rem;
}
.ass-toolbar .ass-title .ass-ic { color: var(--p-base); display: inline-flex; }
.ass-toolbar .ass-stats { font-family: 'Menlo','Consolas',monospace; font-size: .78rem; color: #94a3b8; }
.ass-toolbar #ass-refresh { margin-left: auto; }

.ass-layout { display: grid; grid-template-columns: 230px 1fr; flex: 1; min-height: 0; transition: grid-template-columns .2s; }
.ass-layout.sidebar-hidden { grid-template-columns: 0 1fr; }
.ass-layout.sidebar-hidden .ass-sidebar { visibility: hidden; border-right: none; }
.ass-sidebar { background: rgba(20,20,23,.25); border-right: 1px solid rgba(255,255,255,.1); overflow-y: auto; backdrop-filter: blur(24px) saturate(180%); }
.ass-nav { list-style: none; margin: 0; padding: .35rem 0; }
.ass-section-h {
  display: flex; align-items: center; gap: .4rem; padding: .55rem .85rem .35rem;
  font-size: .68rem; text-transform: uppercase; letter-spacing: .08em; color: var(--p-light); font-weight: 600; user-select: none;
}
.ass-section-h .ass-chev { display: inline-flex; opacity: .6; }
.ass-sub { list-style: none; margin: 0; padding: 0; }
.ass-sub li {
  display: flex; align-items: center; gap: .45rem; padding: .4rem .85rem .4rem 1.4rem;
  cursor: pointer; font-size: .82rem; color: #d4d4d8; border-bottom: 1px solid rgba(255,255,255,.03); transition: background .12s;
}
.ass-sub li:hover { background: rgba(var(--p-base-rgb), .07); }
.ass-sub li.active { background: rgba(var(--p-glow-rgb), .12); box-shadow: inset 2px 0 0 var(--p-base); color: var(--p-base); }
.ass-sub .ass-li-ic { color: var(--p-light); flex-shrink: 0; display: inline-flex; }
.ass-sub li.active .ass-li-ic { color: var(--p-base); }
.ass-sub .ass-li-lbl { flex: 1; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }

.ass-main { display: flex; flex-direction: column; background: transparent; position: relative; overflow: hidden; min-height: 0; }
.ass-main .sidebar-handle {
  position: absolute; left: 0; top: 50%; transform: translateY(-50%); width: 12px; height: 64px;
  background: rgba(39,39,42,.55); border: 1px solid rgba(255,255,255,.08); border-left: none; border-radius: 0 6px 6px 0;
  color: var(--p-light); display: flex; align-items: center; justify-content: center; cursor: pointer; font-size: .9rem; z-index: 10; backdrop-filter: blur(15px);
}
.ass-main .sidebar-handle:hover { background: rgba(var(--p-base-rgb), .18); color: var(--p-base); }
.ass-content { flex: 1; overflow-y: auto; padding: 1.2rem 1.1rem 2rem; }
.ass-empty { color: #64748b; font-style: italic; padding: 1rem; text-align: center; }

/* ===== Formulaire de configuration ===== */
.ass-cfg-wrap { max-width: 760px; }
.ass-cfg-note {
  font-size: .8rem; color: #fbbf24; background: rgba(251,191,36,.1); border: 1px solid rgba(251,191,36,.35);
  border-radius: 8px; padding: .5rem .75rem; margin-bottom: 1rem;
}
.ass-cfg-section { margin-bottom: 1.6rem; }
.ass-cfg-h {
  font-family: 'Menlo','Consolas',monospace; font-size: .82rem; font-weight: 700; color: var(--p-soft);
  text-transform: uppercase; letter-spacing: .05em; margin: 0 0 .7rem;
  padding-bottom: .35rem; border-bottom: 1px solid rgba(var(--p-base-rgb), .25);
}
.ass-field { padding: .55rem .2rem; border-bottom: 1px solid rgba(255,255,255,.05); }
.ass-field-h { display: flex; align-items: center; gap: .75rem; }
.ass-field-label { flex: 0 0 38%; font-size: .85rem; color: #e4e4e7; font-weight: 600; }
.ass-input {
  flex: 1; min-width: 0; background: rgba(0,0,0,.25); border: 1px solid rgba(255,255,255,.12); border-radius: 6px;
  color: #e4e4e7; font-size: .82rem; padding: .4rem .55rem; font-family: inherit;
}
.ass-input:focus { outline: none; border-color: rgba(var(--p-base-rgb), .55); }
.ass-input:disabled { opacity: .5; cursor: not-allowed; }
.ass-field-help { font-size: .73rem; color: #94a3b8; margin-top: .35rem; line-height: 1.4; padding-left: .2rem; }
.ass-field-key { font-family: 'Menlo','Consolas',monospace; font-size: .62rem; color: #52525b; margin-top: .2rem; padding-left: .2rem; }
.ass-saved { font-size: .7rem; font-family: 'Menlo','Consolas',monospace; min-width: 5.5rem; text-align: right; }
.ass-saved.ok { color: #4ade80; } .ass-saved.err { color: #ef4444; } .ass-saved.pending { color: #94a3b8; }

/* interrupteur (bool) */
.ass-switch { position: relative; display: inline-block; width: 42px; height: 22px; flex-shrink: 0; }
.ass-switch input { opacity: 0; width: 0; height: 0; }
.ass-slider {
  position: absolute; cursor: pointer; inset: 0; background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.12); border-radius: 22px; transition: .2s;
}
.ass-slider::before {
  content: ''; position: absolute; height: 16px; width: 16px; left: 2px; top: 2px;
  background: #d4d4d8; border-radius: 50%; transition: .2s;
}
.ass-switch input:checked + .ass-slider { background: rgba(var(--p-base-rgb), .55); border-color: var(--p-base); }
.ass-switch input:checked + .ass-slider::before { transform: translateX(20px); background: var(--p-soft); }
.ass-switch input:disabled + .ass-slider { opacity: .5; cursor: not-allowed; }
