/* ==========================================================================
   DESIGN SYSTEM TITANIUM MÉTALLISÉ + CLIENTS & BUSINESS AVANCÉ (21ST.DEV)
   ========================================================================== */

:root {
  --bg-app: #f4f3f0;
  --sidebar-metal: linear-gradient(180deg, #d8dce2 0%, #c0c5cd 40%, #dee2e7 80%, #b2b7bf 100%);
  --card-surface: rgba(255, 255, 255, 0.96);
  --card-border: rgba(255, 255, 255, 0.95);
  --card-spotlight: rgba(14, 165, 233, 0.12);

  --text-primary: #1e293b;
  --text-muted: #64748b;
  --text-light: #94a3b8;

  --theme-accent: #2f7dd6;
  --theme-accent-2: #18a5d8;
  --theme-accent-soft: rgba(47, 125, 214, 0.10);
  --theme-accent-line: rgba(47, 125, 214, 0.26);
  --theme-on-accent: #ffffff;
  --accent-cyan: var(--theme-accent-2);
  --accent-blue: var(--theme-accent);
  --accent-mint: #10b981;
  --accent-purple: #6f83b6;
  --accent-rose: #f43f5e;
  --accent-amber: #f59e0b;
  --burgundy-btn: var(--theme-accent);
  --brand-purple: var(--theme-accent);

  --shadow-soft: 0 4px 20px -2px rgba(0, 0, 0, 0.04), 0 2px 6px -1px rgba(0, 0, 0, 0.02);
  --shadow-hover: 0 12px 32px -4px rgba(0, 0, 0, 0.08), 0 4px 12px -2px rgba(0, 0, 0, 0.03);

  --radius-xs: 8px;
  --radius-sm: 12px;
  --radius-md: 18px;
  --radius-lg: 24px;
  --radius-pill: 9999px;

  --transition-smooth: all 0.22s cubic-bezier(0.16, 1, 0.3, 1);
}

[data-theme="obsidian"] {
  --bg-app: #080c14;
  --sidebar-metal: linear-gradient(180deg, #111827 0%, #0b0f19 100%);
  --card-surface: rgba(17, 24, 39, 0.94);
  --card-border: rgba(255, 255, 255, 0.12);
  --text-primary: #f8fafc;
  --text-muted: #b6c2d3;
  --text-light: #8b9ab0;
  --theme-accent: #8ca6d3;
  --theme-accent-2: #a78bfa;
  --theme-accent-soft: rgba(140, 166, 211, 0.13);
  --theme-accent-line: rgba(167, 139, 250, 0.30);
  --theme-on-accent: #08101d;
  --accent-cyan: var(--theme-accent);
  --accent-blue: var(--theme-accent-2);
  --accent-purple: #a78bfa;
  --burgundy-btn: var(--theme-accent);
  --brand-purple: var(--theme-accent);
}

[data-theme="gold"] {
  --bg-app: #f4f1ea;
  --sidebar-metal: linear-gradient(180deg, #e7e1d5 0%, #d5cca7 40%, #e8e2d4 80%, #c5bba8 100%);
  --card-surface: rgba(255, 255, 255, 0.95);
  --card-border: rgba(181, 139, 58, 0.24);
  --theme-accent: #b5893d;
  --theme-accent-2: #d2ad63;
  --theme-accent-soft: rgba(181, 137, 61, 0.11);
  --theme-accent-line: rgba(181, 137, 61, 0.30);
  --theme-on-accent: #ffffff;
  --accent-cyan: var(--theme-accent);
  --accent-blue: var(--theme-accent-2);
  --accent-purple: #9b7434;
  --burgundy-btn: var(--theme-accent);
  --brand-purple: var(--theme-accent);
}

* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
  font-family: 'Plus Jakarta Sans', sans-serif;
  -webkit-font-smoothing: antialiased;
}

body {
  background-color: var(--bg-app);
  color: var(--text-primary);
  display: flex;
  min-height: 100vh;
  overflow-x: hidden;
  position: relative;
}

/* Ambient Glow & Noise */
.ambient-glow {
  position: fixed;
  width: 500px;
  height: 500px;
  border-radius: 50%;
  filter: blur(130px);
  opacity: 0.14;
  pointer-events: none;
  z-index: 0;
}
.glow-1 { top: -100px; left: 200px; background: var(--accent-cyan); }
.glow-2 { bottom: -100px; right: 100px; background: var(--accent-purple); }

.noise-overlay {
  position: fixed;
  inset: 0;
  background-image: radial-gradient(rgba(0,0,0,0.03) 1px, transparent 0);
  background-size: 24px 24px;
  pointer-events: none;
  z-index: 1;
}

/* ==================== SIDEBAR ==================== */
.sidebar-titanium {
  width: 275px;
  background: var(--sidebar-metal);
  border-right: 1px solid rgba(0, 0, 0, 0.07);
  box-shadow: inset -2px 0 10px rgba(255, 255, 255, 0.6);
  flex-shrink: 0;
  position: sticky;
  top: 0;
  height: 100vh;
  z-index: 10;
}

.sidebar-inner {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  padding: 24px 18px;
}

.sidebar-brand-block {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
  padding-left: 6px;
}

.brand-hologram {
  width: 38px;
  height: 38px;
  background: #ffffff;
  border-radius: var(--radius-sm);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
  color: var(--accent-cyan);
}

.brand-info h2 { font-size: 1.1rem; font-weight: 800; letter-spacing: 0.06em; }
.brand-info span { font-size: 0.68rem; color: var(--text-muted); font-weight: 600; }

.sidebar-nav-scroll { flex: 1; overflow-y: auto; padding-right: 4px; }
.nav-cluster { margin-bottom: 18px; }
.cluster-label { font-size: 0.66rem; font-weight: 800; color: var(--text-muted); letter-spacing: 0.08em; text-transform: uppercase; margin-bottom: 6px; padding-left: 10px; display: block; }

.nav-item-btn {
  width: 100%;
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 8px 12px;
  border-radius: var(--radius-sm);
  color: var(--text-primary);
  background: transparent;
  border: none;
  font-size: 0.84rem;
  font-weight: 600;
  cursor: pointer;
  transition: var(--transition-smooth);
}
.nav-item-btn:hover { background: rgba(255, 255, 255, 0.45); transform: translateX(3px); }
.nav-item-btn.active { background: rgba(255, 255, 255, 0.9); box-shadow: 0 2px 8px rgba(0,0,0,0.06); font-weight: 700; }

.nav-chip { margin-left: auto; font-size: 0.65rem; background: rgba(0,0,0,0.07); padding: 2px 8px; border-radius: var(--radius-pill); }
.nav-chip.green { background: #ecfdf5; color: var(--accent-mint); }

.sidebar-titanium-footer { padding-top: 16px; border-top: 1px solid rgba(0,0,0,0.06); }
.theme-switch-pills { display: flex; justify-content: center; gap: 8px; margin-bottom: 10px; }
.theme-btn { background: rgba(255,255,255,0.5); border: 1px solid rgba(0,0,0,0.06); width: 28px; height: 28px; border-radius: 50%; cursor: pointer; }
.theme-btn.active { transform: scale(1.15); background: white; }

.backup-actions-grid { display: flex; gap: 8px; margin-bottom: 10px; }
.btn-micro { flex: 1; background: rgba(255, 255, 255, 0.65); border: 1px solid rgba(0, 0, 0, 0.05); padding: 6px; border-radius: var(--radius-xs); font-size: 0.7rem; font-weight: 700; cursor: pointer; display: flex; align-items: center; justify-content: center; gap: 4px; }
.system-time-display { text-align: center; font-size: 0.72rem; color: var(--text-muted); }

/* ==================== VIEWPORT ==================== */
.viewport-main {
  flex: 1;
  padding: 20px 36px 50px;
  max-width: 1540px;
  margin: 0 auto;
  overflow-y: auto;
  z-index: 2;
}

.topbar-glass {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  margin-bottom: 24px;
  position: sticky;
  top: 0;
  z-index: 40;
  background: rgba(244, 243, 240, 0.85);
  backdrop-filter: blur(16px);
  padding: 8px 0;
}
[data-theme="obsidian"] .topbar-glass { background: rgba(8, 12, 20, 0.85); }

.search-trigger-pill {
  flex: 1;
  max-width: 480px;
  background: var(--card-surface);
  padding: 10px 18px;
  border-radius: var(--radius-pill);
  box-shadow: var(--shadow-soft);
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
  border: 1px solid var(--card-border);
  transition: var(--transition-smooth);
}
.search-trigger-pill span { font-size: 0.84rem; color: var(--text-muted); flex: 1; }
.keyboard-combo { display: flex; gap: 4px; }
kbd { background: rgba(0, 0, 0, 0.05); border: 1px solid rgba(0, 0, 0, 0.1); padding: 2px 6px; border-radius: 6px; font-size: 0.65rem; font-weight: 700; color: var(--text-muted); }

.topbar-right-actions { display: flex; align-items: center; gap: 10px; }
.action-pill-btn {
  background: var(--card-surface);
  border: 1px solid var(--card-border);
  padding: 9px 16px;
  border-radius: var(--radius-pill);
  font-size: 0.82rem;
  font-weight: 600;
  display: flex;
  align-items: center;
  gap: 6px;
  cursor: pointer;
  box-shadow: var(--shadow-soft);
  transition: var(--transition-smooth);
  color: var(--text-primary);
}
.btn-cta-gradient { background: linear-gradient(135deg, var(--accent-cyan), var(--accent-blue)); color: white; border: none; padding: 9px 20px; font-weight: 700; }

/* ==================== VUES & SPOTLIGHT ==================== */
.nexus-view { display: none; animation: viewFade 0.22s cubic-bezier(0.16, 1, 0.3, 1); }
.nexus-view.active { display: block; }
@keyframes viewFade { from { opacity: 0; transform: translateY(4px); } to { opacity: 1; transform: translateY(0); } }

.bento-section { margin-bottom: 26px; }
.section-title-bar { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }
.section-heading-tag { font-size: 0.72rem; font-weight: 800; letter-spacing: 0.08em; color: var(--text-muted); text-transform: uppercase; }
.eyebrow { font-size: 0.7rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.08em; color: var(--text-muted); margin-bottom: 2px; }
.page-title { font-size: 1.5rem; font-weight: 800; color: var(--text-primary); }
.page-subtitle { font-size: 0.84rem; color: var(--text-muted); margin-top: 2px; }
.live-dot-pulse { font-size: 0.7rem; color: var(--accent-mint); font-weight: 700; }

.spotlight-card {
  background: var(--card-surface);
  border-radius: var(--radius-lg);
  padding: 22px;
  box-shadow: var(--shadow-soft);
  border: 1px solid var(--card-border);
  transition: var(--transition-smooth);
  position: relative;
  overflow: hidden;
}
.spotlight-card::before {
  content: '';
  position: absolute;
  top: var(--mouse-y, -100px);
  left: var(--mouse-x, -100px);
  width: 250px;
  height: 250px;
  background: radial-gradient(circle, var(--card-spotlight) 0%, transparent 70%);
  transform: translate(-50%, -50%);
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s ease;
  z-index: 0;
}
.spotlight-card:hover::before { opacity: 1; }
.spotlight-card:hover { box-shadow: var(--shadow-hover); }
.spotlight-card > * { position: relative; z-index: 1; }

.card-title-row { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; }

/* ==================== 1. VUE D'ENSEMBLE ==================== */
.gallery-spotlight-bento { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; }
.gallery-tile { height: 105px; background: white; border-radius: var(--radius-md); overflow: hidden; box-shadow: var(--shadow-soft); border: 2px solid white; position: relative; cursor: pointer; transition: var(--transition-smooth); }
.gallery-tile img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
.gallery-tile:hover img { transform: scale(1.08); }
.gallery-tile-tag { position: absolute; bottom: 6px; left: 6px; font-size: 0.62rem; font-weight: 700; background: rgba(0, 0, 0, 0.65); backdrop-filter: blur(4px); color: white; padding: 2px 6px; border-radius: 4px; }

.today-bento-grid { display: grid; grid-template-columns: 1.15fr 1.6fr 1.3fr 1.25fr; gap: 16px; }
.clock-hero-card { display: flex; flex-direction: column; align-items: center; justify-content: center; text-align: center; }
.clock-day-tag { font-size: 0.76rem; font-weight: 700; color: var(--text-muted); text-transform: capitalize; background: rgba(0,0,0,0.04); padding: 3px 12px; border-radius: var(--radius-pill); }
.digital-time-big { font-size: 2.35rem; font-weight: 800; font-family: 'Space Grotesk', sans-serif; letter-spacing: -0.03em; margin: 6px 0; color: var(--text-primary); }
.time-sub-details { font-size: 0.72rem; color: var(--text-light); }
.clock-status-badge { margin-top: 8px; font-size: 0.65rem; font-weight: 700; color: var(--accent-mint); }

.interactive-todo-list { list-style: none; display: flex; flex-direction: column; gap: 8px; max-height: 155px; overflow-y: auto; }
.todo-item-row { display: flex; align-items: center; justify-content: space-between; padding: 8px 10px; border-radius: var(--radius-xs); background: rgba(0, 0, 0, 0.02); font-size: 0.8rem; transition: var(--transition-smooth); }
.todo-item-row.completed { opacity: 0.55; }
.todo-item-row.completed span { text-decoration: line-through; }
.todo-label-wrap { display: flex; align-items: center; gap: 8px; cursor: pointer; flex: 1; }

.agenda-timeline { display: flex; flex-direction: column; gap: 8px; max-height: 155px; overflow-y: auto; }
.agenda-tile { display: flex; justify-content: space-between; align-items: center; padding: 7px 10px; border-radius: var(--radius-xs); background: rgba(0, 0, 0, 0.02); font-size: 0.78rem; }
.badge-chip { font-size: 0.65rem; padding: 2px 8px; background: #f1f5f9; border-radius: var(--radius-pill); font-weight: 700; color: var(--text-muted); }

/* Pomodoro Translucide */
.pomodoro-engine-card { display: flex; flex-direction: column; align-items: center; justify-content: space-between; }
.pomo-status-tag { font-size: 0.68rem; font-weight: 700; color: var(--accent-cyan); }
.pomo-circle-visual { position: relative; width: 104px; height: 104px; margin: 4px auto 8px; }
.pomo-svg-meter { width: 100%; height: 100%; transform: rotate(-90deg); }
.pomo-svg-meter circle { fill: none !important; }
.pomo-meter-track { stroke: #e2e8f0; stroke-width: 7; }
.pomo-meter-fill { stroke: var(--accent-cyan); stroke-width: 7; stroke-linecap: round; stroke-dasharray: 314; stroke-dashoffset: 0; transition: stroke-dashoffset 1s linear; }
.pomo-time-center { position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); font-size: 1.3rem; font-weight: 800; font-family: 'Space Grotesk', sans-serif; color: var(--text-primary); }
.pomo-control-actions { display: flex; gap: 8px; }
.pomo-act-btn { background: rgba(0,0,0,0.04); border: 1px solid rgba(0,0,0,0.05); width: 32px; height: 32px; border-radius: 50%; display: flex; align-items: center; justify-content: center; cursor: pointer; transition: var(--transition-smooth); }
.pomo-act-btn:hover { background: rgba(0,0,0,0.08); transform: scale(1.06); }
.pomo-act-btn.primary { background: var(--accent-cyan); color: white; }

.metrics-bento-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.metric-pill-card { padding: 16px 20px; }
.metric-head { display: flex; justify-content: space-between; align-items: center; font-size: 0.8rem; font-weight: 700; }
.fluid-progress-track { height: 7px; background: rgba(0, 0, 0, 0.06); border-radius: var(--radius-pill); margin: 10px 0 6px; overflow: hidden; }
.fluid-progress-bar { height: 100%; border-radius: var(--radius-pill); transition: width 0.4s ease; }
.fluid-progress-bar.cyan { background: linear-gradient(90deg, #38bdf8, #0ea5e9); }
.fluid-progress-bar.mint { background: linear-gradient(90deg, #34d399, #10b981); }
.fluid-progress-bar.purple { background: linear-gradient(90deg, #c084fc, #8b5cf6); }
.fluid-progress-bar.rose { background: linear-gradient(90deg, #fb7185, #f43f5e); }
.metric-foot { font-size: 0.72rem; color: var(--text-muted); }

.blueprints-bento-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; }
.blueprint-card-modern { height: 120px; display: flex; justify-content: space-between; align-items: center; cursor: pointer; }
.blueprint-icon-circle { width: 42px; height: 42px; border-radius: var(--radius-sm); background: rgba(0,0,0,0.03); display: flex; align-items: center; justify-content: center; margin-bottom: 6px; color: var(--accent-cyan); }
.blueprint-card-body h3 { font-size: 0.95rem; font-weight: 800; margin-bottom: 2px; }
.blueprint-card-body p { font-size: 0.72rem; color: var(--text-muted); }
.blueprint-arrow { color: var(--text-light); transition: var(--transition-smooth); }
.blueprint-card-modern:hover .blueprint-arrow { color: var(--accent-cyan); transform: translate(3px, -3px); }

.dual-analytics-grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: 16px; }
.kpi-pills-cluster { display: flex; gap: 8px; }
.kpi-pill { background: rgba(0,0,0,0.03); padding: 5px 10px; border-radius: var(--radius-xs); display: flex; flex-direction: column; font-size: 0.68rem; }
.kpi-pill.highlight { background: #ecfdf5; color: var(--accent-mint); }
.canvas-chart-holder { height: 180px; width: 100%; margin-top: 10px; }

.matrix-table-wrap { overflow-x: auto; }
.modern-matrix-table { width: 100%; border-collapse: collapse; font-size: 0.8rem; }
.modern-matrix-table th { padding: 8px 6px; color: var(--text-muted); font-weight: 700; text-align: center; }
.modern-matrix-table th:first-child { text-align: left; }
.modern-matrix-table td { padding: 8px 6px; text-align: center; border-top: 1px solid rgba(0,0,0,0.04); }
.modern-matrix-table td:first-child { text-align: left; font-weight: 600; }
.matrix-dot { width: 18px; height: 18px; border-radius: 50%; background: rgba(0, 0, 0, 0.08); display: inline-block; cursor: pointer; transition: var(--transition-smooth); }
.matrix-dot.active { background: var(--accent-mint); box-shadow: 0 0 8px rgba(16, 185, 129, 0.4); }

.manifesto-card { background: linear-gradient(135deg, #1e293b, #0f172a); color: white; margin-top: 24px; display: flex; flex-direction: column; align-items: center; text-align: center; }
blockquote { font-size: 1.15rem; font-style: italic; font-weight: 500; margin: 10px 0; color: #f8fafc; }
.manifesto-author { font-size: 0.78rem; color: var(--text-light); }

/* ==================== 2. CENTRE DOCUMENTAIRE 3 COLONNES ==================== */
.doc-view-header { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; }
.btn-primary-burgundy { background: var(--burgundy-btn); color: white; border: none; padding: 10px 20px; border-radius: var(--radius-sm); font-size: 0.85rem; font-weight: 700; display: inline-flex; align-items: center; gap: 6px; cursor: pointer; box-shadow: 0 4px 14px rgba(138, 75, 86, 0.25); transition: var(--transition-smooth); }
.btn-primary-burgundy:hover { opacity: 0.95; transform: translateY(-1px); }

.doc-tri-layout-grid { display: grid; grid-template-columns: 210px 290px 1fr; gap: 16px; min-height: 580px; }
.doc-panel-column { padding: 18px; display: flex; flex-direction: column; }
.doc-column-title { font-size: 1.05rem; font-weight: 800; color: var(--text-primary); }

.doc-folders-list { display: flex; flex-direction: column; gap: 4px; }
.doc-folder-item { display: flex; align-items: center; justify-content: space-between; padding: 9px 12px; border-radius: var(--radius-sm); font-size: 0.82rem; font-weight: 600; color: var(--text-primary); cursor: pointer; transition: var(--transition-smooth); }
.doc-folder-item:hover { background: rgba(0, 0, 0, 0.03); }
.doc-folder-item.active { background: rgba(0, 0, 0, 0.05); font-weight: 700; }
.doc-folder-name { display: flex; align-items: center; gap: 8px; }
.doc-folder-badge { font-size: 0.7rem; color: var(--text-muted); background: rgba(0, 0, 0, 0.04); padding: 1px 7px; border-radius: var(--radius-pill); }

.doc-items-list { display: flex; flex-direction: column; gap: 6px; overflow-y: auto; max-height: 520px; }
.doc-list-entry { display: flex; align-items: center; justify-content: space-between; padding: 10px 12px; border-radius: var(--radius-sm); border: 1px solid transparent; cursor: pointer; transition: var(--transition-smooth); }
.doc-list-entry:hover { background: rgba(0, 0, 0, 0.02); }
.doc-list-entry.active { background: #ffffff; border-color: rgba(0, 0, 0, 0.08); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.04); }
.doc-entry-info { display: flex; align-items: flex-start; gap: 10px; }
.doc-entry-info strong { display: block; font-size: 0.82rem; line-height: 1.3; color: var(--text-primary); }
.doc-entry-info span { font-size: 0.7rem; color: var(--text-muted); }

.editor-header-meta { display: flex; justify-content: space-between; align-items: flex-start; flex-wrap: wrap; gap: 12px; }
.editor-title-field { font-size: 1.35rem; font-weight: 800; border: none; background: transparent; outline: none; color: var(--text-primary); width: 100%; margin-top: 2px; }
.editor-actions-row { display: flex; align-items: center; gap: 8px; }
.btn-editor-action { background: #f8fafc; border: 1px solid rgba(0, 0, 0, 0.08); padding: 6px 12px; border-radius: var(--radius-xs); font-size: 0.78rem; font-weight: 600; cursor: pointer; display: inline-flex; align-items: center; gap: 6px; color: var(--text-primary); transition: var(--transition-smooth); }
.btn-editor-action:hover { background: #ffffff; box-shadow: var(--shadow-soft); }
.btn-editor-action.danger:hover { color: var(--accent-rose); border-color: var(--accent-rose); }

.download-dropdown-wrap { position: relative; }
.download-dropdown-menu { position: absolute; top: 100%; left: 0; margin-top: 4px; background: #ffffff; border: 1px solid rgba(0, 0, 0, 0.08); border-radius: var(--radius-sm); box-shadow: 0 10px 25px rgba(0, 0, 0, 0.1); padding: 6px; display: none; flex-direction: column; z-index: 50; min-width: 160px; }
.download-dropdown-menu.active { display: flex; }
.download-dropdown-menu button { background: transparent; border: none; padding: 6px 10px; text-align: left; font-size: 0.78rem; font-weight: 600; border-radius: 6px; cursor: pointer; }
.download-dropdown-menu button:hover { background: #f1f5f9; color: var(--accent-blue); }

.editor-selectors-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.editor-pill-select { width: 100%; padding: 9px 14px; border-radius: var(--radius-pill); border: 1px solid rgba(0, 0, 0, 0.08); background: #ffffff; font-size: 0.82rem; font-weight: 600; color: var(--text-primary); outline: none; }
.autofill-banner-bar { display: flex; align-items: center; justify-content: space-between; background: rgba(139, 92, 246, 0.06); border: 1px solid rgba(139, 92, 246, 0.15); padding: 8px 14px; border-radius: var(--radius-sm); }
.editor-textarea-container { flex: 1; min-height: 280px; border: 1px solid rgba(0, 0, 0, 0.06); border-radius: var(--radius-sm); background: #ffffff; padding: 16px; box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.015); }
.editor-textarea { width: 100%; height: 100%; min-height: 260px; border: none; outline: none; resize: vertical; font-size: 0.84rem; line-height: 1.7; color: var(--text-primary); font-family: 'Space Grotesk', monospace; }
.editor-footer-status { display: flex; align-items: center; gap: 6px; font-size: 0.72rem; color: var(--text-muted); }
.doc-bottom-banner-card { background: rgba(138, 75, 86, 0.04); border: 1px solid rgba(138, 75, 86, 0.15); border-radius: var(--radius-md); padding: 16px 20px; }
.doc-banner-icon { color: var(--burgundy-btn); margin-top: 2px; }

/* ==================== 3. SECTION STUDIO & PROJETS ==================== */
.studio-header-block { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; }
.project-filter-pills { display: flex; gap: 8px; }
.filter-pill { background: #ffffff; border: 1px solid rgba(0, 0, 0, 0.06); padding: 6px 14px; border-radius: var(--radius-pill); font-size: 0.78rem; font-weight: 600; color: var(--text-muted); cursor: pointer; transition: var(--transition-smooth); }
.filter-pill:hover, .filter-pill.active { background: var(--brand-purple); color: #ffffff; border-color: var(--brand-purple); }

.studio-projects-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 20px; }
.project-card-antonya { background: #ffffff; border-radius: var(--radius-lg); padding: 22px; box-shadow: 0 4px 20px -2px rgba(0, 0, 0, 0.04); border: 1px solid rgba(255, 255, 255, 0.9); display: flex; flex-direction: column; gap: 14px; transition: var(--transition-smooth); position: relative; }
.project-card-antonya:hover { transform: translateY(-2px); box-shadow: 0 10px 25px -4px rgba(0, 0, 0, 0.08); }

.proj-card-head { display: flex; justify-content: space-between; align-items: flex-start; }
.proj-client-info { display: flex; align-items: center; gap: 12px; }
.proj-avatar-circle { width: 40px; height: 40px; border-radius: 50%; border: 1.5px solid var(--brand-purple); color: var(--brand-purple); display: flex; align-items: center; justify-content: center; font-weight: 700; font-size: 0.95rem; background: rgba(132, 76, 102, 0.04); }
.proj-text-meta h3 { font-size: 0.95rem; font-weight: 700; color: var(--text-primary); margin: 0; }
.proj-text-meta span { font-size: 0.72rem; color: var(--text-muted); }

.proj-status-row { display: flex; align-items: center; gap: 8px; }
.proj-status-select { flex: 1; padding: 8px 12px; border-radius: var(--radius-sm); border: 1px solid rgba(0, 0, 0, 0.06); background: #f8fafc; font-size: 0.8rem; font-weight: 600; color: var(--text-primary); outline: none; }
.proj-priority-badge { padding: 8px 12px; border-radius: var(--radius-sm); background: #f8fafc; border: 1px solid rgba(0, 0, 0, 0.06); font-size: 0.75rem; font-weight: 600; color: var(--text-muted); }

.proj-progress-block { display: flex; flex-direction: column; gap: 4px; }
.proj-progress-labels { display: flex; justify-content: space-between; font-size: 0.72rem; color: var(--text-muted); }
.proj-progress-track { height: 22px; background: #f1f5f9; border-radius: var(--radius-pill); overflow: hidden; position: relative; }
.proj-progress-fill { height: 100%; background: var(--brand-purple); border-radius: var(--radius-pill); transition: width 0.4s ease; display: flex; align-items: center; padding-left: 10px; color: white; font-size: 0.65rem; font-weight: 700; }

.proj-kpi-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; background: #fcfcfc; border: 1px solid #f1f5f9; border-radius: var(--radius-sm); padding: 10px 14px; }
.proj-kpi-item span { font-size: 0.65rem; font-weight: 800; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.04em; }
.proj-kpi-item strong { display: block; font-size: 0.85rem; font-weight: 800; color: var(--text-primary); margin-top: 2px; }

.proj-actions-row { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.btn-proj-pill { padding: 7px 12px; border-radius: var(--radius-pill); border: 1px solid rgba(0, 0, 0, 0.08); background: #ffffff; font-size: 0.75rem; font-weight: 600; cursor: pointer; display: inline-flex; align-items: center; gap: 5px; color: var(--text-primary); transition: var(--transition-smooth); }
.btn-proj-pill:hover { background: #f8fafc; box-shadow: 0 2px 6px rgba(0, 0, 0, 0.03); }

/* ==================== 4. SECTION CLIENTS & BUSINESS AVANCÉE ==================== */
.cb-header-block { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; }
.cb-section-number { font-size: 1.5rem; font-weight: 800; color: var(--text-primary); font-family: 'Space Grotesk', serif; }
.cb-tagline { font-size: 0.8rem; color: var(--text-muted); line-height: 1.5; max-width: 900px; }

/* 4 KPIs Bento Banner */
.cb-kpis-banner-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
}
.cb-kpi-card {
  padding: 18px 20px;
  display: flex;
  align-items: center;
  gap: 16px;
}
.cb-kpi-icon-box {
  width: 44px;
  height: 44px;
  border-radius: var(--radius-sm);
  background: rgba(138, 75, 86, 0.08);
  color: var(--burgundy-btn);
  display: flex;
  align-items: center;
  justify-content: center;
}
.cb-kpi-body {
  display: flex;
  flex-direction: column;
}
.cb-kpi-number {
  font-size: 1.6rem;
  font-weight: 800;
  color: var(--text-primary);
  line-height: 1.1;
  font-family: 'Space Grotesk', sans-serif;
}
.cb-kpi-label {
  font-size: 0.78rem;
  font-weight: 700;
  color: var(--text-muted);
  margin-top: 2px;
}
.cb-kpi-trend {
  font-size: 0.7rem;
  margin-top: 3px;
  font-weight: 600;
}
.cb-kpi-trend.positive { color: var(--accent-mint); }
.cb-kpi-trend.neutral { color: var(--text-muted); }

/* Pipeline 6 Colonnes avec Drag & Drop */
.cb-pipeline-section-card {
  padding: 20px;
}
.cb-pipeline-columns-grid {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  gap: 12px;
  overflow-x: auto;
}
.cb-pipeline-col {
  background: #fbfbfa;
  border-radius: var(--radius-sm);
  border: 1px solid rgba(0, 0, 0, 0.04);
  padding: 10px;
  display: flex;
  flex-direction: column;
  min-width: 175px;
  transition: var(--transition-smooth);
}
.cb-pipeline-col.drag-over {
  background: rgba(138, 75, 86, 0.08);
  border-color: var(--burgundy-btn);
}
.cb-pipe-col-head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 10px;
  padding-bottom: 6px;
  border-bottom: 1px solid rgba(0, 0, 0, 0.04);
}
.cb-pipe-col-title {
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.04em;
  color: var(--text-muted);
}
.cb-pipe-col-head.client-won .cb-pipe-col-title {
  color: var(--accent-mint);
}
.cb-pipe-count {
  font-size: 0.65rem;
  font-weight: 700;
  background: rgba(0, 0, 0, 0.04);
  padding: 1px 6px;
  border-radius: var(--radius-pill);
}

.cb-pipe-cards-stack {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
}
.cb-pipe-card {
  background: #ffffff;
  border: 1px solid rgba(0, 0, 0, 0.06);
  border-radius: var(--radius-xs);
  padding: 10px;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);
  cursor: grab;
  user-select: none;
  transition: var(--transition-smooth);
}
.cb-pipe-card:active {
  cursor: grabbing;
  opacity: 0.65;
}
.cb-pipe-card:hover {
  transform: translateY(-2px);
  box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}
.cb-pipe-card strong {
  display: block;
  font-size: 0.78rem;
  color: var(--text-primary);
}
.cb-pipe-card .service-tag {
  font-size: 0.68rem;
  color: var(--text-muted);
  margin-top: 2px;
  display: block;
}
.cb-pipe-card .budget-tag {
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--text-primary);
  margin-top: 4px;
  display: block;
}
.cb-pipe-card .date-tag {
  font-size: 0.65rem;
  color: var(--text-light);
  margin-top: 4px;
  display: block;
}

.btn-add-lead-pipe {
  background: transparent;
  border: 1px dashed rgba(0, 0, 0, 0.1);
  padding: 6px;
  border-radius: var(--radius-xs);
  font-size: 0.7rem;
  font-weight: 600;
  color: var(--text-muted);
  cursor: pointer;
  margin-top: 8px;
  width: 100%;
}
.btn-add-lead-pipe:hover {
  background: #ffffff;
  color: var(--text-primary);
}

/* Middle Layout (Tableau Leads + Sidebar Droite) */
.cb-middle-layout-grid {
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 16px;
}

.cb-leads-table {
  font-size: 0.78rem;
}
.cb-leads-table th {
  padding: 8px 10px;
  font-size: 0.7rem;
}
.cb-leads-table td {
  padding: 8px 10px;
}
.lead-status-chip {
  font-size: 0.62rem;
  font-weight: 800;
  padding: 2px 7px;
  border-radius: var(--radius-pill);
  text-transform: uppercase;
  letter-spacing: 0.02em;
}
.lead-status-chip.nouveau { background: #fef2f2; color: #dc2626; }
.lead-status-chip.a-contacter { background: #fef9c3; color: #ca8a04; }
.lead-status-chip.contacte { background: #f1f5f9; color: #475569; }
.lead-status-chip.rdv-planifie { background: #eff6ff; color: #2563eb; }
.lead-status-chip.proposition { background: #faf5ff; color: #9333ea; }
.lead-status-chip.negociation { background: #fff7ed; color: #ea580c; }
.lead-status-chip.gagne { background: #ecfdf5; color: #059669; }
.lead-status-chip.perdu { background: #f8fafc; color: #94a3b8; }

.user-avatar-mini {
  width: 22px;
  height: 22px;
  border-radius: 50%;
  object-fit: cover;
}

/* Sidebar Droite */
.cb-right-sidebar-stack {
  display: flex;
  flex-direction: column;
  gap: 12px;
}
.cb-side-card {
  padding: 14px 16px;
}

.cb-appointments-list, .cb-followups-list, .cb-docs-commercial-list {
  display: flex;
  flex-direction: column;
  gap: 6px;
}
.cb-rdv-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.72rem;
  padding: 4px 0;
  border-bottom: 1px solid rgba(0, 0, 0, 0.03);
}
.cb-rdv-row .meta-time {
  font-size: 0.68rem;
  color: var(--text-muted);
}

.cb-followup-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.72rem;
  padding: 4px 0;
}
.priority-pill-mini {
  font-size: 0.62rem;
  font-weight: 700;
  padding: 1px 6px;
  border-radius: var(--radius-pill);
}
.priority-pill-mini.haute { background: #fef2f2; color: #dc2626; }
.priority-pill-mini.moyenne { background: #fff7ed; color: #ea580c; }

.cb-doc-item-row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  font-size: 0.72rem;
  padding: 4px 0;
}
.file-badge-mini {
  font-size: 0.6rem;
  font-weight: 800;
  background: #f1f5f9;
  padding: 1px 5px;
  border-radius: 4px;
  color: var(--text-muted);
}

/* Bottom Analytics */
.cb-business-analytics-card {
  padding: 22px;
}
.cb-analytics-tri-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 24px;
}

.cb-analytics-kpi-subgrid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}
.cb-ana-kpi-item {
  display: flex;
  flex-direction: column;
}
.cb-ana-label {
  font-size: 0.65rem;
  font-weight: 800;
  color: var(--text-muted);
  letter-spacing: 0.04em;
}
.cb-ana-val {
  font-size: 1.45rem;
  font-weight: 800;
  color: var(--text-primary);
  font-family: 'Space Grotesk', sans-serif;
  margin: 3px 0 2px;
}

.cb-ana-subhead {
  font-size: 0.75rem;
  font-weight: 700;
  color: var(--text-primary);
}

.cb-sources-legend {
  list-style: none;
  font-size: 0.72rem;
  display: flex;
  flex-direction: column;
  gap: 3px;
  flex: 1;
}
.cb-sources-legend li {
  display: flex;
  justify-content: space-between;
  color: var(--text-muted);
}

.service-demand-bar-row {
  display: flex;
  flex-direction: column;
  gap: 3px;
  font-size: 0.72rem;
}
.service-demand-bar-row .top-line {
  display: flex;
  justify-content: space-between;
  font-weight: 600;
}
.demand-progress-bg {
  height: 6px;
  background: #f1f5f9;
  border-radius: var(--radius-pill);
  overflow: hidden;
}
.demand-progress-fill {
  height: 100%;
  background: var(--burgundy-btn);
  border-radius: var(--radius-pill);
}

/* ==================== COMMONS ==================== */
.modern-input { width: 100%; padding: 8px 12px; border: 1px solid rgba(0, 0, 0, 0.1); border-radius: var(--radius-sm); font-size: 0.84rem; outline: none; background: transparent; color: var(--text-primary); }
.btn-glow-primary { background: linear-gradient(135deg, var(--accent-cyan), var(--accent-blue)); color: white; border: none; padding: 8px 16px; border-radius: var(--radius-pill); font-size: 0.8rem; font-weight: 700; cursor: pointer; }
.btn-secondary { background: #f1f5f9; border: 1px solid rgba(0,0,0,0.05); color: var(--text-primary); padding: 6px 12px; border-radius: var(--radius-xs); font-size: 0.78rem; font-weight: 600; cursor: pointer; }
.btn-secondary.danger { color: var(--accent-rose); border-color: rgba(244, 63, 94, 0.2); }
.year-pill { background: rgba(0,0,0,0.05); padding: 5px 14px; border-radius: var(--radius-pill); font-weight: 700; font-size: 0.85rem; }
.btn-icon-ghost { background: none; border: none; cursor: pointer; color: var(--text-muted); }
.palette-backdrop, .lightbox-backdrop { position: fixed; inset: 0; background: rgba(15, 23, 42, 0.45); backdrop-filter: blur(10px); z-index: 1000; display: none; align-items: center; justify-content: center; }
.palette-backdrop.active, .lightbox-backdrop.active { display: flex; }
.palette-modal { width: 540px; padding: 0; }
.palette-search { display: flex; align-items: center; gap: 12px; padding: 16px 20px; border-bottom: 1px solid rgba(0, 0, 0, 0.06); }
.palette-search input { flex: 1; border: none; outline: none; background: transparent; color: var(--text-primary); font-size: 0.95rem; }
.palette-body { max-height: 280px; overflow-y: auto; padding: 10px; }
.palette-item { display: flex; align-items: center; gap: 12px; padding: 10px 14px; border-radius: var(--radius-sm); font-size: 0.85rem; font-weight: 600; cursor: pointer; }
.palette-item:hover { background: rgba(14, 165, 233, 0.1); color: var(--accent-cyan); }
.palette-footer { padding: 10px 20px; font-size: 0.7rem; color: var(--text-muted); border-top: 1px solid rgba(0, 0, 0, 0.06); }
.universal-modal-card { width: 480px; }
.form-row { display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
.toast-stack { position: fixed; bottom: 24px; right: 24px; display: flex; flex-direction: column; gap: 10px; z-index: 2000; }
.toast-pill { background: #0f172a; color: white; padding: 12px 18px; border-radius: var(--radius-md); font-size: 0.82rem; font-weight: 600; box-shadow: 0 10px 30px rgba(0, 0, 0, 0.25); display: flex; align-items: center; gap: 10px; }
.system-footer { text-align: center; font-size: 0.72rem; color: var(--text-light); margin-top: 40px; }

@media (max-width: 1200px) {
  .cb-pipeline-columns-grid { grid-template-columns: repeat(3, 1fr); }
  .cb-middle-layout-grid { grid-template-columns: 1fr; }
  .cb-analytics-tri-grid { grid-template-columns: 1fr; }
}
/* ==========================================================================
   CONTENU & CRÉATION — Composants natifs D&A NEXUS
   ========================================================================== */

/* --- Utilitaires partagés (alignés sur le design system) --- */
.flex { display: flex; }
.inline-flex { display: inline-flex; }
.items-center { align-items: center; }
.items-start { align-items: flex-start; }
.justify-between { justify-content: space-between; }
.justify-center { justify-content: center; }
.flex-1 { flex: 1; }
.gap-1 { gap: 4px; } .gap-1\.5 { gap: 6px; } .gap-2 { gap: 8px; } .gap-3 { gap: 12px; } .gap-4 { gap: 16px; }
.w-full { width: 100%; }
.block { display: block; }
.inline-block { display: inline-block; }
.text-center { text-align: center; }
.font-bold { font-weight: 700; }
.text-primary { color: var(--text-primary); }
.text-muted { color: var(--text-muted); }
.text-light { color: var(--text-light); }
.text-xs { font-size: 0.75rem; }
.text-sm { font-size: 0.85rem; }
.text-base { font-size: 1rem; }
.text-2xl { font-size: 1.5rem; }
.text-[10px] { font-size: 10px; }
.text-[11px] { font-size: 11px; }
.mb-1 { margin-bottom: 4px; } .mb-2 { margin-bottom: 8px; } .mb-3 { margin-bottom: 12px; } .mb-4 { margin-bottom: 16px; } .mb-6 { margin-bottom: 24px; }
.mt-1 { margin-top: 4px; } .mt-1\.5 { margin-top: 6px; } .mt-2 { margin-top: 8px; }
.ml-1 { margin-left: 4px; }
.py-0\.5 { padding-top: 2px; padding-bottom: 2px; }
.py-1 { padding-top: 4px; padding-bottom: 4px; }
.px-2 { padding-left: 8px; padding-right: 8px; }
.p-3 { padding: 12px; }
.space-y-3 > * + * { margin-top: 12px; }
.cursor-pointer { cursor: pointer; }

/* --- Tableaux (langage D&A NEXUS) --- */
.table-responsive { width: 100%; overflow-x: auto; }
.crm-table { width: 100%; border-collapse: collapse; font-size: 0.82rem; }
.crm-table th { text-align: left; padding: 10px 12px; font-size: 0.7rem; font-weight: 800; color: var(--text-muted); text-transform: uppercase; letter-spacing: 0.04em; border-bottom: 1px solid rgba(0,0,0,0.06); white-space: nowrap; }
.crm-table td { padding: 10px 12px; border-bottom: 1px solid rgba(0,0,0,0.04); vertical-align: middle; }
.crm-table tbody tr { transition: var(--transition-smooth); }
.crm-table tbody tr:hover { background: rgba(0,0,0,0.015); }

.text-link-action { background: none; border: none; color: var(--accent-cyan); font-size: 0.72rem; font-weight: 700; cursor: pointer; padding: 0; }
.text-link-action:hover { text-decoration: underline; }

/* --- Header de la vue --- */
.cc-header-block { display: flex; justify-content: space-between; align-items: flex-end; gap: 16px; flex-wrap: wrap; }

/* --- Statuts (mapping D&A) --- */
.cc-status { font-size: 0.62rem; font-weight: 800; padding: 3px 8px; border-radius: var(--radius-pill); letter-spacing: 0.03em; display: inline-block; text-transform: uppercase; white-space: nowrap; }
.cc-status.idee { background: #eef2ff; color: #4338ca; }
.cc-status.programme { background: #eff6ff; color: #1d4ed8; }
.cc-status.en-creation { background: #fef3c7; color: #b45309; }
.cc-status.a-valider { background: #fdf2f8; color: #be185d; }
.cc-status.pret { background: #ecfdf5; color: #047857; }
.cc-status.publie { background: #065f46; color: #d1fae5; }
.cc-status.a-tourner { background: #fffbeb; color: #a16207; }
.cc-status.a-planifier { background: #f1f5f9; color: #475569; }
.cc-status.cc-neutre { background: #f1f5f9; color: #475569; }
.cc-status.static { cursor: default; }
/* --- Calendrier hebdomadaire --- */
.cc-weekly-scroll { overflow-x: auto; padding-bottom: 6px; }
.cc-weekly-grid { display: grid; grid-template-columns: repeat(7, minmax(168px, 1fr)); gap: 12px; min-width: 1240px; }
.cc-week-day { background: rgba(0,0,0,0.02); border: 1px solid rgba(0,0,0,0.04); border-radius: var(--radius-sm); padding: 12px; cursor: pointer; display: flex; flex-direction: column; gap: 12px; transition: var(--transition-smooth); }
.cc-week-day:hover { background: var(--card-surface); border-color: rgba(0,0,0,0.1); box-shadow: var(--shadow-hover); transform: translateY(-1px); }
.cc-week-head { display: flex; justify-content: space-between; align-items: baseline; }
.cc-week-head strong { font-size: 0.8rem; font-weight: 800; color: var(--text-primary); }
.cc-week-date { font-size: 0.68rem; color: var(--text-muted); }
.cc-week-body { display: flex; flex-direction: column; gap: 7px; }
.cc-week-network { font-size: 0.68rem; font-weight: 700; color: var(--accent-blue); display: inline-flex; align-items: center; gap: 5px; }
.cc-week-title { font-size: 0.82rem; font-weight: 700; color: var(--text-primary); line-height: 1.3; }
.cc-week-meta { font-size: 0.7rem; color: var(--text-muted); display: inline-flex; align-items: center; gap: 5px; }

/* --- Row outils : liens / hashtags / CTA --- */
.cc-tools-sub-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; align-items: stretch; }
.cc-links-box, .cc-hashtags-box, .cc-cta-box { background: rgba(0,0,0,0.02); border: 1px solid rgba(0,0,0,0.04); border-radius: var(--radius-sm); padding: 12px 14px; display: flex; flex-direction: column; gap: 8px; }
.cc-sub-title { font-size: 0.62rem; font-weight: 800; letter-spacing: 0.08em; color: var(--text-muted); text-transform: uppercase; }
.cc-links-row { display: flex; flex-wrap: wrap; gap: 6px; }
.cc-link-badge { display: inline-flex; align-items: center; gap: 5px; background: var(--card-surface); border: 1px solid rgba(0,0,0,0.06); border-radius: var(--radius-pill); padding: 3px 10px; font-size: 0.7rem; font-weight: 600; color: var(--text-primary); text-decoration: none; cursor: pointer; transition: var(--transition-smooth); }
.cc-link-badge:hover { border-color: var(--accent-cyan); color: var(--accent-cyan); box-shadow: var(--shadow-soft); }
.cc-hashtags-row { display: flex; flex-wrap: wrap; gap: 6px; }
.cc-hash-chip { display: inline-flex; align-items: center; gap: 4px; background: rgba(139,92,246,0.08); color: var(--brand-purple); border: 1px solid rgba(139,92,246,0.15); border-radius: var(--radius-pill); padding: 2px 9px; font-size: 0.68rem; font-weight: 700; cursor: pointer; transition: var(--transition-smooth); }
.cc-hash-chip:hover { background: rgba(139,92,246,0.16); }
.cc-hash-chip.static { cursor: default; }
.cc-cta-list { list-style: none; display: flex; flex-direction: column; gap: 5px; }
.cc-cta-item { display: flex; align-items: center; gap: 6px; font-size: 0.74rem; font-weight: 600; color: var(--text-primary); cursor: pointer; padding: 2px 4px; border-radius: 6px; transition: var(--transition-smooth); }
.cc-cta-item:hover { background: rgba(0,0,0,0.03); color: var(--accent-cyan); }

/* --- Toolbar recherche & filtres --- */
.cc-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 12px; flex-wrap: wrap; }
.cc-search-box { display: flex; align-items: center; gap: 8px; width: 260px; background: var(--card-surface); border: 1px solid rgba(0,0,0,0.06); border-radius: var(--radius-sm); padding: 4px 10px; }
.cc-search-box i { flex-shrink: 0; color: var(--text-muted); }
.cc-search-box .modern-input { border: none; padding: 4px; background: transparent; }
/* --- Tableau des idées --- */
.cc-row-action { cursor: pointer; }
.cc-row-action:hover { background: rgba(0,0,0,0.02) !important; }
.cc-idea-name { color: var(--text-primary); }
.cc-row-action:hover .cc-idea-name { color: var(--accent-cyan); }
.cc-visual-thumb { width: 34px; height: 34px; object-fit: cover; border-radius: 8px; }
.cc-actions-cell { text-align: right; }
.cc-row-actions { display: inline-flex; gap: 6px; }

/* --- Sections 03 & 04 --- */
.cc-dual-section-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; }
.cc-see-all-btn { margin-top: 12px; background: none; border: none; color: var(--accent-cyan); font-size: 0.74rem; font-weight: 700; cursor: pointer; padding: 0; }
.cc-see-all-btn:hover { text-decoration: underline; }

.cc-inspiration-gallery-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); gap: 12px; }
.cc-insp-card { background: var(--card-surface); border: 1px solid rgba(0,0,0,0.05); border-radius: var(--radius-sm); overflow: hidden; display: flex; flex-direction: column; transition: var(--transition-smooth); }
.cc-insp-card:hover { box-shadow: var(--shadow-hover); transform: translateY(-1px); }
.cc-insp-img { position: relative; height: 100px; background: rgba(0,0,0,0.04); overflow: hidden; }
.cc-insp-img img { width: 100%; height: 100%; object-fit: cover; transition: transform 0.4s ease; }
.cc-insp-card:hover .cc-insp-img img { transform: scale(1.06); }
.cc-insp-fav { position: absolute; top: 6px; right: 6px; width: 24px; height: 24px; border-radius: 50%; border: 1px solid rgba(0,0,0,0.08); background: rgba(255,255,255,0.85); color: var(--text-muted); cursor: pointer; display: flex; align-items: center; justify-content: center; font-size: 0.8rem; }
.cc-insp-fav.on { color: var(--accent-amber); }
.cc-insp-meta { padding: 8px 10px 2px; display: flex; flex-direction: column; gap: 4px; }
.cc-insp-meta strong { font-size: 0.78rem; color: var(--text-primary); line-height: 1.3; }
.cc-insp-sub { font-size: 0.66rem; color: var(--text-muted); }
.cc-insp-actions { display: flex; align-items: center; gap: 4px; padding: 2px 8px 8px; }

/* --- Kanban production --- */
.cc-kanban-scroll { overflow-x: auto; padding-bottom: 6px; }
.cc-production-kanban-grid { display: grid; grid-template-columns: repeat(6, minmax(180px, 1fr)); gap: 12px; min-width: 1180px; align-items: start; }
.cc-prod-col { background: rgba(0,0,0,0.02); border: 1px solid rgba(0,0,0,0.04); border-radius: var(--radius-sm); padding: 10px; min-height: 120px; transition: var(--transition-smooth); }
.cc-prod-col.drag-over { background: rgba(138,75,86,0.08); border-color: var(--burgundy-btn); }
.cc-prod-col-head { display: flex; justify-content: space-between; align-items: center; padding-bottom: 8px; margin-bottom: 8px; border-bottom: 1px solid rgba(0,0,0,0.06); }
.cc-prod-col-title { font-size: 0.68rem; font-weight: 800; letter-spacing: 0.05em; color: var(--text-muted); text-transform: uppercase; }
.cc-prod-count { font-size: 0.65rem; font-weight: 700; background: rgba(0,0,0,0.04); padding: 1px 7px; border-radius: var(--radius-pill); }
.cc-prod-cards { display: flex; flex-direction: column; gap: 8px; }
.cc-prod-card { background: var(--card-surface); border: 1px solid rgba(0,0,0,0.06); border-radius: var(--radius-xs); padding: 9px 10px; box-shadow: 0 2px 6px rgba(0,0,0,0.02); cursor: grab; user-select: none; transition: var(--transition-smooth); }
.cc-prod-card:active { cursor: grabbing; opacity: 0.6; }
.cc-prod-card:hover { transform: translateY(-1px); box-shadow: 0 4px 12px rgba(0,0,0,0.05); }
.cc-prod-card strong { display: block; font-size: 0.76rem; color: var(--text-primary); line-height: 1.3; }
.cc-prod-sub { font-size: 0.66rem; color: var(--text-muted); margin-top: 3px; display: block; }

/* --- Performance --- */
.cc-perf-kpis-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; }
.cc-perf-kpi-card { background: rgba(0,0,0,0.02); border: 1px solid rgba(0,0,0,0.04); border-radius: var(--radius-sm); padding: 16px 18px; display: flex; flex-direction: column; }
.cc-ana-label { font-size: 0.65rem; font-weight: 800; color: var(--text-muted); letter-spacing: 0.04em; }
.cc-ana-val { font-size: 1.5rem; font-weight: 800; color: var(--text-primary); font-family: 'Space Grotesk', sans-serif; margin: 4px 0 2px; }
.cc-perf-chip { font-size: 0.62rem; font-weight: 800; padding: 3px 8px; border-radius: var(--radius-pill); text-transform: uppercase; }
.cc-perf-chip.excellent { background: #ecfdf5; color: #047857; }
.cc-perf-chip.bon { background: #eff6ff; color: #1d4ed8; }
.cc-perf-chip.moyen { background: #fef3c7; color: #b45309; }
.cc-perf-chip.a-analyser { background: #fef2f2; color: #b91c1c; }

/* --- Ressources --- */
.cc-resources-bottom-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 12px; }
.cc-resource-card { background: rgba(0,0,0,0.02); border: 1px solid rgba(0,0,0,0.04); border-radius: var(--radius-sm); padding: 14px; display: flex; flex-direction: column; gap: 6px; cursor: pointer; transition: var(--transition-smooth); }
.cc-resource-card:hover { background: var(--card-surface); border-color: rgba(0,0,0,0.1); box-shadow: var(--shadow-hover); transform: translateY(-1px); }
.cc-resource-card.cc-has-url .cc-res-head { color: var(--accent-cyan); }
.cc-res-head { display: flex; align-items: center; justify-content: space-between; color: var(--text-muted); }
.cc-res-type { font-size: 0.62rem; font-weight: 800; background: rgba(0,0,0,0.04); padding: 2px 7px; border-radius: var(--radius-pill); text-transform: uppercase; letter-spacing: 0.04em; }
.cc-res-name { font-size: 0.84rem; font-weight: 700; color: var(--text-primary); }
.cc-res-desc { font-size: 0.7rem; color: var(--text-muted); }
/* --- Modales & formulaires Contenu --- */
.cc-modal-form { display: flex; flex-direction: column; gap: 12px; }
.cc-field-label { display: block; font-size: 0.72rem; font-weight: 700; color: var(--text-muted); margin-bottom: 4px; }
.cc-modal-actions { display: flex; justify-content: flex-end; gap: 10px; padding-top: 6px; }
.cc-manage-row { display: flex; gap: 8px; margin-bottom: 14px; }
.cc-check-row { display: flex; align-items: center; gap: 8px; font-size: 0.8rem; font-weight: 600; color: var(--text-primary); }
.cc-detail-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 10px 14px; margin-bottom: 6px; }
.cc-detail-field { display: flex; flex-direction: column; gap: 2px; margin-bottom: 10px; }
.cc-detail-field > span { font-size: 0.62rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-muted); }
.cc-detail-field strong { font-size: 0.84rem; color: var(--text-primary); }
.cc-detail-field p { font-size: 0.8rem; color: var(--text-primary); line-height: 1.5; }
.cc-detail-visual { width: 100%; max-height: 200px; object-fit: cover; border-radius: var(--radius-sm); margin-top: 4px; }
.cc-detail-status { margin: 4px 0; }
.cc-detail-actions { display: flex; flex-wrap: wrap; gap: 8px; border-top: 1px solid rgba(0,0,0,0.06); padding-top: 12px; align-items: center; }
.cc-detail-status-select { width: auto; min-width: 170px; font-size: 0.78rem; font-weight: 600; padding: 6px 10px; }
.cc-hashtags-row-manage { margin-top: 6px; }
.cc-hash-manage { font-size: 0.74rem; padding: 4px 10px; }
.cc-cta-manage-list { display: flex; flex-direction: column; gap: 8px; }
.cc-cta-manage-row { display: flex; align-items: center; justify-content: space-between; gap: 8px; background: rgba(0,0,0,0.02); border: 1px solid rgba(0,0,0,0.04); border-radius: var(--radius-xs); padding: 6px 10px; }
.cc-cta-manage-text { flex: 1; text-align: left; background: none; border: none; font-size: 0.78rem; font-weight: 600; color: var(--text-primary); cursor: pointer; }

/* --- Analytics --- */
.cc-ana-chart-holder { height: 230px; width: 100%; margin-bottom: 16px; }
.cc-analytics-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 10px; }
.cc-ana-stat-item { background: rgba(0,0,0,0.02); border: 1px solid rgba(0,0,0,0.04); border-radius: var(--radius-sm); padding: 12px 14px; display: flex; flex-direction: column; gap: 4px; }
.cc-ana-stat-item span { font-size: 0.62rem; font-weight: 800; text-transform: uppercase; letter-spacing: 0.04em; color: var(--text-muted); }
.cc-ana-stat-item strong { font-size: 0.9rem; color: var(--text-primary); }

/* --- Responsive Contenu & Création --- */
@media (max-width: 1200px) {
  .cc-tools-sub-row { grid-template-columns: 1fr; }
  .cc-dual-section-grid { grid-template-columns: 1fr; }
  .cc-perf-kpis-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 760px) {
  .cc-header-block { flex-direction: column; align-items: flex-start; }
  .cc-perf-kpis-grid { grid-template-columns: 1fr; }
  .cc-toolbar { flex-direction: column; align-items: flex-start; }
  .cc-search-box { width: 100%; }
  .cc-ana-chart-holder { height: 220px; }
}
@media (max-width: 480px) {
  .cc-week-day { min-width: 140px; }
}

/* ==========================================
   VIE & ORGANISATION — Design system D&A NEXUS
   ========================================== */
.life-header-block {
  display: flex; align-items: flex-start; justify-content: space-between;
  gap: var(--radius-sm); flex-wrap: wrap;
}
.life-kpis-grid {
  display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px;
}
.life-kpi-card {
  background: var(--card-surface); border: 1px solid var(--card-border);
  border-radius: var(--radius-md); padding: 16px 18px;
  box-shadow: var(--shadow-soft); transition: var(--transition-smooth);
}
.life-kpi-card:hover { box-shadow: var(--shadow-hover); transform: translateY(-2px); }
.life-kpi-header { display: flex; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.life-kpi-title { font-size: 11px; font-weight: 600; letter-spacing: 0.06em; text-transform: uppercase; color: var(--text-muted); }
.life-kpi-value { font-size: 28px; font-weight: 700; color: var(--text-primary); line-height: 1.1; }
.life-kpi-sub { font-size: 12px; color: var(--text-muted); margin-top: 4px; }
.life-kpi-progress {
  height: 5px; background: rgba(100, 116, 139, 0.15); border-radius: var(--radius-pill);
  overflow: hidden; margin-top: 10px;
}
.life-kpi-bar {
  height: 100%; border-radius: var(--radius-pill);
  background: linear-gradient(90deg, var(--accent-cyan), var(--accent-mint));
  transition: width 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}
.text-cyan { color: var(--accent-cyan); } .text-mint { color: var(--accent-mint); } .text-purple { color: var(--accent-purple); }

/* --- Semaine --- */
.life-week-label { font-size: 12px; font-weight: 600; color: var(--text-muted); white-space: nowrap; }
.life-week-scroll { overflow-x: auto; padding-bottom: 6px; }
.life-week-grid { display: grid; grid-template-columns: repeat(7, minmax(150px, 1fr)); gap: 10px; min-width: 1050px; }
.life-week-day {
  background: var(--card-surface); border: 1px solid var(--card-border);
  border-radius: var(--radius-sm); padding: 12px; min-height: 180px;
  transition: var(--transition-smooth);
}
.life-week-day:hover { box-shadow: var(--shadow-soft); }
.life-week-head {
  display: flex; align-items: baseline; justify-content: space-between;
  padding-bottom: 8px; margin-bottom: 8px; border-bottom: 1px solid rgba(100, 116, 139, 0.15);
}
.life-week-head strong { font-size: 13px; color: var(--text-primary); }
.life-week-date { font-size: 11px; color: var(--text-muted); }
.life-week-date.today {
  color: #fff; background: var(--accent-cyan); padding: 1px 8px; border-radius: var(--radius-pill); font-weight: 600;
}
.life-week-items { display: flex; flex-direction: column; gap: 6px; }
.life-week-item {
  background: rgba(100, 116, 139, 0.08); border-radius: var(--radius-xs);
  padding: 7px 9px; cursor: pointer; transition: var(--transition-smooth);
  display: flex; flex-direction: column; gap: 3px;
}
.life-week-item:hover { transform: translateY(-1px); box-shadow: var(--shadow-soft); background: rgba(14, 165, 233, 0.1); }
.life-week-item-time { font-size: 11px; font-weight: 700; color: var(--accent-cyan); }
.life-week-item-cat {
  align-self: flex-start; font-size: 9px; font-weight: 700; letter-spacing: 0.04em;
  text-transform: uppercase; color: #fff; padding: 1px 7px; border-radius: var(--radius-pill);
}
.life-week-item-title { font-size: 12px; color: var(--text-primary); line-height: 1.3; }
.life-week-empty { font-size: 11px; color: var(--text-light); font-style: italic; padding: 8px 0; text-align: center; }

/* --- Priorités --- */
.life-priorities-list { list-style: none; padding: 0; margin: 0; display: flex; flex-direction: column; gap: 8px; }
.life-priority-item {
  display: flex; align-items: center; justify-content: space-between;
  background: rgba(100, 116, 139, 0.06); border-radius: var(--radius-sm);
  padding: 10px 14px; transition: var(--transition-smooth);
}
.life-priority-item:hover { background: rgba(14, 165, 233, 0.08); }
.life-priority-item.done .life-priority-title { text-decoration: line-through; color: var(--text-light); }
.life-priority-row { display: flex; align-items: center; gap: 12px; cursor: pointer; flex: 1; min-width: 0; }
.life-priority-row input[type="checkbox"] { width: 17px; height: 17px; accent-color: var(--accent-mint); cursor: pointer; }
.life-priority-title { font-size: 13px; color: var(--text-primary); font-weight: 500; }
.life-priority-level {
  font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em;
  color: #fff; padding: 2px 9px; border-radius: var(--radius-pill); white-space: nowrap;
}
.life-priority-actions { display: flex; gap: 4px; opacity: 0; transition: var(--transition-smooth); }
.life-priority-item:hover .life-priority-actions { opacity: 1; }

/* --- To-Do (table) --- */
.life-task-row:hover td { background: rgba(14, 165, 233, 0.05); }
.life-task-title { font-size: 13px; color: var(--text-primary); }
.life-task-prio {
  font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em;
  color: #fff; padding: 2px 9px; border-radius: var(--radius-pill);
}
.life-task-status-select {
  background: var(--card-surface); border: 1px solid var(--card-border);
  border-radius: var(--radius-xs); padding: 4px 8px; font-size: 12px;
  color: var(--text-primary); cursor: pointer; transition: var(--transition-smooth);
}
.life-task-status-select:focus { outline: 2px solid var(--accent-cyan); outline-offset: 1px; }

/* --- Événements --- */
.life-events-list, #life-events-list { display: flex; flex-direction: column; gap: 10px; }
.life-event-item {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  background: rgba(100, 116, 139, 0.06); border-radius: var(--radius-sm);
  padding: 12px 14px; transition: var(--transition-smooth);
}
.life-event-item:hover { background: rgba(14, 165, 233, 0.08); box-shadow: var(--shadow-soft); }
.life-event-main { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; flex: 1; min-width: 0; }
.life-event-cat, .life-admin-cat, .life-reminder-cat {
  font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em;
  color: #fff; padding: 2px 9px; border-radius: var(--radius-pill); white-space: nowrap;
}
.life-event-title, .life-admin-title, .life-reminder-title { font-size: 13px; color: var(--text-primary); font-weight: 600; }
.life-event-meta, .life-event-place, .life-admin-date, .life-reminder-date {
  display: inline-flex; align-items: center; gap: 4px; font-size: 11px; color: var(--text-muted);
}
.life-event-actions, .life-admin-actions, .life-travel-actions, .life-reminder-actions { display: flex; gap: 4px; opacity: 0; transition: var(--transition-smooth); }
.life-event-item:hover .life-event-actions,
.life-admin-item:hover .life-admin-actions,
.life-travel-card:hover .life-travel-actions,
.life-reminder-item:hover .life-reminder-actions { opacity: 1; }

/* --- Admin --- */
#life-admin-list { display: flex; flex-direction: column; gap: 10px; }
.life-admin-item {
  display: flex; align-items: center; justify-content: space-between; gap: 12px;
  background: rgba(100, 116, 139, 0.06); border-radius: var(--radius-sm);
  padding: 12px 14px; transition: var(--transition-smooth);
}
.life-admin-item:hover { background: rgba(245, 158, 11, 0.07); box-shadow: var(--shadow-soft); }
.life-admin-main { display: flex; align-items: center; gap: 10px; flex-wrap: wrap; flex: 1; min-width: 0; }
.life-admin-action { font-size: 11px; color: var(--text-muted); font-style: italic; }
.life-admin-status { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.04em; }
.life-admin-status.status-overdue { color: var(--accent-rose); }
.life-admin-status.status-coming { color: var(--accent-amber); }
.life-admin-status.status-info { color: var(--accent-blue); }
.life-admin-status.status-done { color: var(--accent-mint); }

/* --- Voyages --- */
#life-travels-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 14px; }
.life-travel-card {
  background: var(--card-surface); border: 1px solid var(--card-border);
  border-radius: var(--radius-md); padding: 16px; box-shadow: var(--shadow-soft);
  transition: var(--transition-smooth); display: flex; flex-direction: column; gap: 10px;
}
.life-travel-card:hover { box-shadow: var(--shadow-hover); transform: translateY(-2px); }
.life-travel-header { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.life-travel-dest { font-size: 15px; font-weight: 700; color: var(--text-primary); }
.life-travel-status { font-size: 10px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; }
.travels-status-confirmed { color: var(--accent-mint); }
.travels-status-active { color: var(--accent-cyan); }
.travels-status-planned { color: var(--accent-amber); }
.travels-status-done { color: var(--text-muted); }
.life-travel-dates { display: inline-flex; align-items: center; gap: 5px; font-size: 12px; color: var(--text-muted); }
.life-travel-checklist { display: flex; flex-direction: column; gap: 6px; }
.life-travel-check-header {
  display: flex; justify-content: space-between; font-size: 11px; font-weight: 600;
  text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-muted);
}
.life-travel-check-count { color: var(--accent-cyan); }
.life-travel-check-item { display: flex; align-items: center; gap: 8px; cursor: pointer; font-size: 12px; color: var(--text-primary); }
.life-travel-check-item input[type="checkbox"] { width: 15px; height: 15px; accent-color: var(--accent-mint); cursor: pointer; }
.life-travel-check-item span.done { text-decoration: line-through; color: var(--text-light); }
.life-travel-progress { height: 4px; background: rgba(100, 116, 139, 0.15); border-radius: var(--radius-pill); overflow: hidden; margin-top: 2px; }
.life-travel-bar { height: 100%; background: linear-gradient(90deg, var(--accent-purple), var(--accent-cyan)); border-radius: var(--radius-pill); transition: width 0.5s cubic-bezier(0.16, 1, 0.3, 1); }
.life-travel-actions { justify-content: flex-end; }
.life-travel-checklist-temp { display: flex; flex-direction: column; gap: 6px; margin-top: 6px; }

/* --- Listes rapides --- */
#life-quicklists-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(230px, 1fr)); gap: 14px; }
.life-list-card {
  background: var(--card-surface); border: 1px solid var(--card-border);
  border-radius: var(--radius-md); padding: 14px; box-shadow: var(--shadow-soft);
  transition: var(--transition-smooth); display: flex; flex-direction: column; gap: 10px;
}
.life-list-card:hover { box-shadow: var(--shadow-hover); transform: translateY(-2px); }
.life-list-title-row { display: flex; align-items: center; gap: 8px; }
.life-list-name { font-size: 13px; font-weight: 700; color: var(--text-primary); flex: 1; }
.life-list-count { font-size: 10px; font-weight: 700; color: var(--accent-cyan); background: rgba(14, 165, 233, 0.12); padding: 2px 8px; border-radius: var(--radius-pill); }
.life-list-items { display: flex; flex-direction: column; gap: 4px; max-height: 220px; overflow-y: auto; }
.life-list-item { display: flex; align-items: center; justify-content: space-between; gap: 4px; border-radius: var(--radius-xs); padding: 3px 4px; transition: var(--transition-smooth); }
.life-list-item:hover { background: rgba(14, 165, 233, 0.07); }
.life-list-item.checked span { text-decoration: line-through; color: var(--text-light); }
.life-list-item-row { display: flex; align-items: center; gap: 8px; cursor: pointer; flex: 1; min-width: 0; font-size: 12px; color: var(--text-primary); }
.life-list-item-row input[type="checkbox"] { width: 14px; height: 14px; accent-color: var(--accent-mint); cursor: pointer; }
.life-list-item-del { opacity: 0; transition: var(--transition-smooth); }
.life-list-item:hover .life-list-item-del { opacity: 1; }
.life-list-add-row { display: flex; align-items: center; gap: 6px; }
.life-list-add-input {
  flex: 1; min-width: 0; background: rgba(100, 116, 139, 0.08); border: 1px solid transparent;
  border-radius: var(--radius-xs); padding: 6px 10px; font-size: 12px; color: var(--text-primary);
  transition: var(--transition-smooth);
}
.life-list-add-input:focus { outline: none; border-color: var(--accent-cyan); background: var(--card-surface); }

/* --- Rappels --- */
#life-reminders-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); gap: 12px; }
.life-reminder-item {
  display: flex; align-items: flex-start; justify-content: space-between; gap: 10px;
  background: var(--card-surface); border: 1px solid var(--card-border);
  border-radius: var(--radius-sm); padding: 13px 15px;
  box-shadow: var(--shadow-soft); transition: var(--transition-smooth);
  border-left: 3px solid var(--accent-cyan);
}
.life-reminder-item:hover { box-shadow: var(--shadow-hover); transform: translateY(-1px); }
.life-reminder-item.reminder-overdue { border-left-color: var(--accent-rose); }
.life-reminder-item.reminder-today { border-left-color: var(--accent-amber); }
.life-reminder-item.reminder-done { border-left-color: var(--accent-mint); opacity: 0.65; }
.life-reminder-item.reminder-done .life-reminder-title { text-decoration: line-through; color: var(--text-muted); }
.life-reminder-main { display: flex; flex-direction: column; gap: 5px; align-items: flex-start; flex: 1; min-width: 0; }
.life-reminder-days { font-weight: 700; }
.life-reminder-note { font-size: 11px; color: var(--text-muted); font-style: italic; }

/* --- Calendrier global (modale) --- */
#life-global-calendar { display: flex; flex-direction: column; gap: 18px; max-height: 62vh; overflow-y: auto; padding-right: 4px; }
.life-cal-month-title {
  font-size: 13px; font-weight: 700; text-transform: capitalize; color: var(--text-primary);
  padding-bottom: 8px; margin-bottom: 10px; border-bottom: 1px solid rgba(100, 116, 139, 0.15);
}
.life-cal-day { display: flex; gap: 14px; padding: 7px 0; border-bottom: 1px dashed rgba(100, 116, 139, 0.12); }
.life-cal-day-label { min-width: 90px; font-size: 12px; font-weight: 700; text-transform: capitalize; color: var(--accent-cyan); }
.life-cal-day-items { display: flex; flex-direction: column; gap: 5px; flex: 1; }
.life-cal-item {
  display: inline-flex; align-items: center; gap: 7px; flex-wrap: wrap;
  font-size: 12px; color: var(--text-primary);
  background: rgba(100, 116, 139, 0.07); border-radius: var(--radius-xs); padding: 5px 10px;
}
.life-cal-item-type { font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.05em; color: var(--text-muted); }
.life-cal-item-time { font-size: 11px; font-weight: 700; color: var(--accent-cyan); }

/* --- Divers life --- */
.life-empty-msg { font-size: 12px; color: var(--text-light); font-style: italic; padding: 14px; text-align: center; width: 100%; }

@media (max-width: 1200px) { .life-kpis-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 760px) {
  .life-kpis-grid { grid-template-columns: 1fr 1fr; gap: 10px; }
  .life-kpi-value { font-size: 22px; }
  .life-header-block { flex-direction: column; }
  #life-reminders-grid, #life-travels-grid, #life-quicklists-grid { grid-template-columns: 1fr; }
  .life-priority-actions, .life-event-actions, .life-admin-actions, .life-reminder-actions { opacity: 1; }
}
/* ========================================================================== 
   COMPTABILITÉ PREMIUM — extension isolée, sans impact sur les autres vues
   ========================================================================== */
.accounting-suite {
  --acct-accent: #8a4b56;
  --acct-accent-soft: rgba(138, 75, 86, 0.10);
  --acct-positive: #16a34a;
  --acct-positive-soft: rgba(22, 163, 74, 0.10);
  --acct-negative: #dc5b6a;
  --acct-negative-soft: rgba(220, 91, 106, 0.10);
  --acct-warm: #b7791f;
  --acct-surface-muted: rgba(255,255,255,0.52);
  --acct-line: rgba(30,41,59,0.08);
  --acct-chart-1: #8a4b56;
  --acct-chart-2: #b86f7d;
  --acct-chart-3: #cf9aa3;
  --acct-chart-4: #d9b8ae;
  --acct-chart-5: #a98572;
  --acct-chart-6: #d7c8bb;
  display: flex;
  flex-direction: column;
  gap: 22px;
  padding-bottom: 10px;
}
[data-theme="obsidian"] .accounting-suite {
  --acct-accent: #c77b8b;
  --acct-accent-soft: rgba(199,123,139,0.14);
  --acct-positive: #5dd39e;
  --acct-positive-soft: rgba(93,211,158,0.12);
  --acct-negative: #ff8594;
  --acct-negative-soft: rgba(255,133,148,0.13);
  --acct-warm: #e3bb72;
  --acct-surface-muted: rgba(255,255,255,0.035);
  --acct-line: rgba(255,255,255,0.08);
  --acct-chart-1: #d88999;
  --acct-chart-2: #aa6473;
  --acct-chart-3: #7f4b56;
  --acct-chart-4: #e1b7bf;
  --acct-chart-5: #9b7a70;
  --acct-chart-6: #665b59;
}
[data-theme="gold"] .accounting-suite {
  --acct-accent: #9a7b32;
  --acct-accent-soft: rgba(154,123,50,0.11);
  --acct-positive: #5d8d55;
  --acct-positive-soft: rgba(93,141,85,0.11);
  --acct-negative: #b86464;
  --acct-negative-soft: rgba(184,100,100,0.11);
  --acct-warm: #a57d27;
  --acct-surface-muted: rgba(255,255,255,0.50);
  --acct-line: rgba(120,95,42,0.11);
  --acct-chart-1: #9a7b32;
  --acct-chart-2: #b89b5d;
  --acct-chart-3: #d3be8b;
  --acct-chart-4: #8c7250;
  --acct-chart-5: #c8ab77;
  --acct-chart-6: #ded2b7;
}

.acct-hero-card { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; padding:26px 28px; }
.acct-hero-copy { max-width:720px; }
.acct-title-line { display:flex; align-items:baseline; gap:12px; }
.acct-section-number { font-family:'Space Grotesk',sans-serif; font-weight:800; font-size:1.45rem; color:var(--acct-accent); }
.acct-hero-copy p { color:var(--text-muted); font-size:.82rem; line-height:1.7; margin-top:8px; }
.acct-hero-actions { display:flex; flex-wrap:wrap; gap:8px; justify-content:flex-end; }
.acct-action-btn { border:1px solid var(--card-border); background:var(--card-surface); color:var(--text-primary); border-radius:12px; padding:9px 12px; font-size:.72rem; font-weight:750; display:inline-flex; align-items:center; gap:7px; cursor:pointer; box-shadow:var(--shadow-soft); transition:var(--transition-smooth); }
.acct-action-btn:hover { transform:translateY(-1px); box-shadow:var(--shadow-hover); }
.acct-action-btn.primary { background:linear-gradient(135deg,var(--acct-accent),color-mix(in srgb, var(--acct-accent) 72%, #1e293b)); color:white; border-color:transparent; }
.acct-action-btn.compact { padding:8px 10px; font-size:.68rem; }

.acct-toolbar-card { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:12px 15px; border-radius:16px; }
.acct-scope-pills { display:flex; gap:6px; }
.acct-filter-pill { border:0; background:transparent; color:var(--text-muted); padding:7px 16px; border-radius:10px; font-size:.7rem; font-weight:800; text-transform:uppercase; cursor:pointer; transition:var(--transition-smooth); }
.acct-filter-pill:hover { background:var(--acct-surface-muted); color:var(--text-primary); }
.acct-filter-pill.active { background:var(--acct-accent); color:white; box-shadow:0 6px 16px color-mix(in srgb, var(--acct-accent) 23%, transparent); }
.acct-period-controls { display:flex; align-items:center; gap:9px; flex-wrap:wrap; justify-content:flex-end; }
.acct-period-controls label { display:flex; align-items:center; gap:6px; color:var(--text-muted); font-size:.68rem; font-weight:700; }
.acct-select { color:var(--text-primary); background:var(--card-surface); border:1px solid var(--card-border); border-radius:10px; padding:7px 9px; font-size:.7rem; outline:none; }

.acct-section-block { display:flex; flex-direction:column; gap:10px; }
.acct-section-heading { display:flex; align-items:center; gap:8px; padding:0 4px; }
.acct-section-heading > span, .acct-section-heading > div > span { color:var(--acct-accent); font-weight:850; font-size:.8rem; }
.acct-section-heading h3 { text-transform:uppercase; letter-spacing:.045em; font-size:.74rem; font-weight:850; color:var(--text-primary); }
.acct-section-heading.with-action { justify-content:space-between; }
.acct-section-heading.with-action > div { display:flex; align-items:center; gap:8px; }

.acct-kpi-grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; }
.acct-kpi-card { min-height:128px; padding:18px; display:grid; grid-template-columns:auto 1fr; align-items:start; gap:12px; border-radius:18px; }
.acct-kpi-icon { width:38px; height:38px; display:grid; place-items:center; border-radius:50%; background:var(--acct-accent-soft); color:var(--acct-accent); }
.acct-kpi-card.income .acct-kpi-icon { background:var(--acct-positive-soft); color:var(--acct-positive); }
.acct-kpi-card.expense .acct-kpi-icon { background:var(--acct-negative-soft); color:var(--acct-negative); }
.acct-kpi-card > div:nth-child(2) { display:flex; flex-direction:column; gap:4px; min-width:0; }
.acct-kpi-card span { color:var(--text-muted); text-transform:uppercase; font-size:.59rem; letter-spacing:.035em; font-weight:800; }
.acct-kpi-card strong { color:var(--text-primary); font-family:'Space Grotesk',sans-serif; font-size:1.36rem; line-height:1.15; white-space:nowrap; }
.acct-kpi-card small { color:var(--text-light); font-size:.61rem; line-height:1.35; }
.acct-kpi-card.income small { color:var(--acct-positive); }
.acct-kpi-card.expense small { color:var(--acct-negative); }
.acct-mini-progress { grid-column:1/-1; height:5px; background:var(--acct-line); border-radius:999px; overflow:hidden; align-self:end; }
.acct-mini-progress span { display:block; height:100%; width:0; background:var(--acct-accent); border-radius:inherit; transition:width .35s ease; }

.acct-primary-grid { display:grid; grid-template-columns:minmax(320px,.82fr) minmax(0,1.78fr); gap:18px; align-items:start; }
.acct-summary-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
.acct-summary-card { padding:17px; min-height:322px; border-radius:18px; }
.acct-summary-title { display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid var(--acct-line); padding-bottom:10px; margin-bottom:11px; }
.acct-summary-title strong { text-transform:uppercase; font-size:.68rem; letter-spacing:.04em; }
.acct-scope-badge { padding:3px 7px; border-radius:999px; background:var(--acct-accent-soft); color:var(--acct-accent); font-size:.55rem; font-weight:850; }
.acct-summary-metrics { display:grid; grid-template-columns:1fr 1fr; gap:8px; margin-bottom:12px; }
.acct-summary-metric span { display:block; color:var(--text-muted); font-size:.57rem; margin-bottom:3px; }
.acct-summary-metric strong { font-family:'Space Grotesk',sans-serif; font-size:.86rem; }
.acct-summary-profit { display:flex; justify-content:space-between; gap:8px; border-top:1px dashed var(--acct-line); border-bottom:1px dashed var(--acct-line); padding:9px 0; margin-bottom:12px; font-size:.65rem; }
.acct-summary-profit strong { font-size:.78rem; }
.acct-breakdown-title { font-size:.58rem; text-transform:uppercase; letter-spacing:.04em; color:var(--text-muted); font-weight:800; margin-bottom:7px; }
.acct-breakdown-row { display:grid; grid-template-columns:minmax(60px,1fr) 52px 38px; gap:7px; align-items:center; margin:6px 0; font-size:.58rem; }
.acct-breakdown-row > span:first-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; color:var(--text-muted); }
.acct-breakdown-track { height:4px; border-radius:999px; background:var(--acct-line); overflow:hidden; }
.acct-breakdown-track i { display:block; height:100%; border-radius:inherit; background:var(--acct-accent); }
.acct-breakdown-row b { text-align:right; font-size:.56rem; color:var(--text-primary); }

.acct-flow-section { min-width:0; }
.acct-table-card { padding:0; overflow:hidden; border-radius:18px; }
.acct-table-scroll { overflow:auto; width:100%; }
.acct-table { width:100%; border-collapse:collapse; min-width:920px; }
.acct-table th { position:sticky; top:0; z-index:2; background:color-mix(in srgb,var(--card-surface) 96%, var(--acct-accent) 4%); color:var(--text-muted); text-transform:uppercase; letter-spacing:.035em; font-size:.52rem; padding:11px 10px; text-align:left; border-bottom:1px solid var(--acct-line); }
.acct-table td { padding:10px; border-bottom:1px solid var(--acct-line); font-size:.59rem; color:var(--text-primary); vertical-align:middle; }
.acct-table tr:last-child td { border-bottom:0; }
.acct-table tbody tr:hover { background:var(--acct-surface-muted); }
.acct-type-cell { display:flex; align-items:center; gap:6px; white-space:nowrap; }
.acct-type-dot { width:20px; height:20px; border-radius:50%; display:grid; place-items:center; flex:0 0 auto; }
.acct-type-dot.income { background:var(--acct-positive-soft); color:var(--acct-positive); }
.acct-type-dot.expense { background:var(--acct-negative-soft); color:var(--acct-negative); }
.acct-type-dot.transfer { background:var(--acct-accent-soft); color:var(--acct-accent); }
.acct-scope-chip { display:inline-flex; padding:3px 6px; border-radius:6px; background:var(--acct-surface-muted); color:var(--text-primary); font-size:.51rem; font-weight:850; text-transform:uppercase; }
.acct-money-in { color:var(--acct-positive); font-weight:800; white-space:nowrap; }
.acct-money-out { color:var(--acct-negative); font-weight:800; white-space:nowrap; }
.acct-status-chip { display:inline-flex; align-items:center; justify-content:center; padding:3px 7px; border-radius:999px; font-size:.5rem; font-weight:850; white-space:nowrap; border:0; cursor:default; }
.acct-status-chip.received,.acct-status-chip.paid { background:var(--acct-positive-soft); color:var(--acct-positive); }
.acct-status-chip.pending,.acct-status-chip.scheduled { background:rgba(245,158,11,.12); color:var(--accent-amber); }
.acct-status-chip.overdue { background:var(--acct-negative-soft); color:var(--acct-negative); cursor:pointer; }
.acct-status-chip.pending { cursor:pointer; }
.acct-row-actions { display:inline-flex; align-items:center; gap:2px; }
.acct-edit-row,.acct-delete-row { border:0; background:transparent; color:var(--text-light); cursor:pointer; padding:4px; border-radius:6px; }
.acct-edit-row:hover { color:var(--acct-accent); background:var(--acct-accent-soft); }
.acct-delete-row:hover { color:var(--acct-negative); background:var(--acct-negative-soft); }
.acct-text-link { width:100%; border:0; border-top:1px solid var(--acct-line); background:transparent; color:var(--acct-accent); padding:9px; font-size:.6rem; font-weight:800; display:flex; gap:5px; align-items:center; justify-content:center; cursor:pointer; }
.acct-empty { text-align:center; color:var(--text-muted); padding:20px !important; }

.acct-chart-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.acct-donut-card { display:grid; grid-template-columns:230px 1fr; align-items:center; gap:14px; min-height:245px; padding:18px; border-radius:18px; }
.acct-card-kicker { display:block; text-transform:uppercase; color:var(--text-primary); font-size:.66rem; font-weight:850; margin-bottom:8px; }
.acct-donut-holder { position:relative; width:180px; height:180px; margin:auto; }
.acct-donut-center { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:center; align-items:center; pointer-events:none; }
.acct-donut-center strong { font-family:'Space Grotesk',sans-serif; font-size:.9rem; }
.acct-donut-center small { font-size:.52rem; color:var(--text-muted); }
.acct-chart-legend { display:flex; flex-direction:column; gap:9px; }
.acct-legend-row { display:grid; grid-template-columns:8px minmax(0,1fr) auto auto; gap:7px; align-items:center; font-size:.58rem; }
.acct-legend-dot { width:7px; height:7px; border-radius:50%; }
.acct-legend-row span:nth-child(2) { color:var(--text-muted); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.acct-legend-row b { font-size:.57rem; }
.acct-legend-row em { color:var(--text-light); font-style:normal; font-size:.52rem; min-width:28px; text-align:right; }

.acct-savings-card { padding:20px; display:grid; grid-template-columns:210px 1fr; gap:22px; align-items:center; border-radius:18px; }
.acct-savings-total { display:flex; align-items:center; gap:12px; padding-right:20px; border-right:1px solid var(--acct-line); }
.acct-savings-icon { width:42px; height:42px; border-radius:14px; display:grid; place-items:center; background:var(--acct-accent-soft); color:var(--acct-accent); }
.acct-savings-total small { display:block; color:var(--text-muted); text-transform:uppercase; font-size:.56rem; font-weight:800; }
.acct-savings-total strong { display:block; margin-top:3px; font-family:'Space Grotesk',sans-serif; font-size:1.15rem; }
.acct-goals-list { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 18px; }
.acct-goal-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:4px 10px; align-items:center; }
.acct-goal-row > span { color:var(--text-muted); font-size:.58rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.acct-goal-row > b { font-size:.56rem; }
.acct-goal-progress { grid-column:1/-1; height:5px; background:var(--acct-line); border-radius:999px; overflow:hidden; }
.acct-goal-progress i { display:block; height:100%; background:var(--acct-accent); border-radius:inherit; }

.acct-due-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.acct-due-card { padding:16px; border-radius:18px; min-height:190px; }
.acct-due-title { display:flex; align-items:center; gap:7px; padding-bottom:9px; border-bottom:1px solid var(--acct-line); font-size:.61rem; font-weight:850; text-transform:uppercase; }
.acct-due-title.receivable { color:var(--acct-positive); }
.acct-due-title.payable { color:var(--acct-negative); }
.acct-due-title.personal { color:var(--acct-accent); }
.acct-due-row { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:5px 10px; padding:9px 0; border-bottom:1px dashed var(--acct-line); }
.acct-due-row:last-child { border-bottom:0; }
.acct-due-row span { font-size:.59rem; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.acct-due-row strong { font-size:.59rem; }
.acct-due-row small { grid-column:1/-1; color:var(--text-light); font-size:.5rem; }
.acct-due-empty { color:var(--text-light); font-size:.58rem; padding:16px 0; }

.acct-forecast-card { display:grid; grid-template-columns:1fr 220px; gap:20px; align-items:center; padding:18px 20px; border-radius:18px; }
.acct-forecast-lines { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.acct-forecast-line { display:flex; flex-direction:column; gap:4px; padding:8px 10px; border-radius:12px; background:var(--acct-surface-muted); }
.acct-forecast-line span { color:var(--text-muted); font-size:.55rem; }
.acct-forecast-line strong { font-family:'Space Grotesk',sans-serif; font-size:.8rem; }
.acct-forecast-line.positive strong { color:var(--acct-positive); }
.acct-forecast-line.negative strong { color:var(--acct-negative); }
.acct-forecast-total { border-left:1px solid var(--acct-line); padding-left:20px; text-align:right; }
.acct-forecast-total span { display:block; color:var(--text-muted); text-transform:uppercase; font-size:.58rem; font-weight:800; }
.acct-forecast-total strong { display:block; margin-top:5px; font-family:'Space Grotesk',sans-serif; font-size:1.5rem; color:var(--acct-accent); }

.acct-annual-layout { display:grid; grid-template-columns:minmax(0,1fr) 235px; gap:12px; align-items:start; }
.acct-table-card.annual { min-width:0; }
.acct-annual-table { min-width:760px; }
.acct-annual-table td,.acct-annual-table th { text-align:right; }
.acct-annual-table td:first-child,.acct-annual-table th:first-child { text-align:left; }
.acct-annual-table tr.is-current { background:var(--acct-accent-soft); }
.acct-spark { height:18px; display:flex; gap:2px; align-items:flex-end; justify-content:flex-end; }
.acct-spark i { width:3px; border-radius:2px 2px 0 0; background:var(--acct-accent); opacity:.75; }
.acct-side-stack { display:flex; flex-direction:column; gap:12px; }
.acct-quick-card,.acct-tip-card { padding:16px; border-radius:18px; }
.acct-quick-card h4 { text-transform:uppercase; font-size:.62rem; letter-spacing:.04em; margin-bottom:8px; }
.acct-quick-card button { width:100%; border:0; border-bottom:1px solid var(--acct-line); background:transparent; color:var(--text-primary); padding:8px 3px; display:flex; align-items:center; gap:8px; text-align:left; font-size:.58rem; cursor:pointer; }
.acct-quick-card button:last-child { border-bottom:0; }
.acct-quick-card button:hover { color:var(--acct-accent); padding-left:6px; }
.acct-tip-card span { color:var(--acct-accent); font-size:.58rem; font-weight:850; text-transform:uppercase; display:flex; gap:6px; align-items:center; }
.acct-tip-card p { color:var(--text-muted); font-size:.57rem; line-height:1.55; margin-top:7px; }

.acct-modal-backdrop { z-index:120; }
.acct-modal-card { width:min(680px,calc(100vw - 36px)); }
.acct-modal-card.small { width:min(480px,calc(100vw - 36px)); }
.acct-form-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
.acct-form-grid label,.acct-form-label { display:block; color:var(--text-muted); font-size:.62rem; font-weight:800; margin-bottom:5px; }
.acct-form-wide { grid-column:1/-1; }
.acct-recurring-row { display:grid; grid-template-columns:1fr 180px; gap:12px; align-items:center; }
.acct-recurring-row label { display:flex; align-items:center; gap:7px; margin:0; }
.acct-form-actions { display:flex; justify-content:flex-end; gap:8px; padding-top:4px; }

@media (max-width: 1280px) {
  .acct-kpi-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .acct-primary-grid { grid-template-columns:1fr; }
  .acct-summary-card { min-height:260px; }
  .acct-donut-card { grid-template-columns:190px 1fr; }
}
@media (max-width: 980px) {
  .acct-hero-card,.acct-toolbar-card { flex-direction:column; align-items:stretch; }
  .acct-hero-actions,.acct-period-controls { justify-content:flex-start; }
  .acct-kpi-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .acct-chart-grid,.acct-due-grid { grid-template-columns:1fr; }
  .acct-annual-layout { grid-template-columns:1fr; }
  .acct-side-stack { display:grid; grid-template-columns:1fr 1fr; }
  .acct-forecast-card { grid-template-columns:1fr; }
  .acct-forecast-total { border-left:0; border-top:1px solid var(--acct-line); padding:14px 0 0; text-align:left; }
  .acct-savings-card { grid-template-columns:1fr; }
  .acct-savings-total { border-right:0; border-bottom:1px solid var(--acct-line); padding:0 0 16px; }
}
@media (max-width: 680px) {
  .accounting-suite { gap:18px; }
  .acct-hero-card { padding:20px; }
  .acct-hero-actions { display:grid; grid-template-columns:1fr 1fr; }
  .acct-action-btn { justify-content:center; }
  .acct-toolbar-card { padding:10px; }
  .acct-period-controls { display:grid; grid-template-columns:1fr 1fr; width:100%; }
  .acct-period-controls label { flex-direction:column; align-items:stretch; }
  .acct-period-controls .acct-action-btn { grid-column:1/-1; }
  .acct-kpi-grid,.acct-summary-grid,.acct-side-stack { grid-template-columns:1fr; }
  .acct-kpi-card { min-height:108px; }
  .acct-donut-card { grid-template-columns:1fr; }
  .acct-goals-list { grid-template-columns:1fr; }
  .acct-forecast-lines { grid-template-columns:1fr 1fr; }
  .acct-form-grid { grid-template-columns:1fr; }
  .acct-form-wide { grid-column:1; }
  .acct-recurring-row { grid-template-columns:1fr; }
}


/* ========================================================================== 
   BIEN-ÊTRE & OKR — MODULE ISOLÉ / D&A NEXUS
   Toutes les règles sont confinées à .wellness-suite ou #view-objectifs.
   ========================================================================== */
.wellness-suite { --well-accent: var(--brand-purple); --well-soft: rgba(132,76,102,.10); --well-line: rgba(132,76,102,.18); }
.wellness-suite .well-header-card { display:flex; align-items:flex-start; justify-content:space-between; gap:24px; padding:24px; background:linear-gradient(135deg,var(--card-surface),rgba(255,255,255,.76)); }
[data-theme="obsidian"] .wellness-suite .well-header-card { background:linear-gradient(135deg,var(--card-surface),rgba(18,28,44,.90)); }
[data-theme="gold"] .wellness-suite { --well-accent:#9b7a37; --well-soft:rgba(155,122,55,.11); --well-line:rgba(155,122,55,.22); }
.wellness-suite .well-header-copy { max-width:610px; }
.wellness-suite .well-header-actions { display:flex; gap:9px; flex-wrap:wrap; justify-content:flex-end; }
.wellness-suite .well-header-actions .action-pill-btn, .wellness-suite .well-header-actions .btn-primary-burgundy { min-height:40px; }
.wellness-suite .well-date-label { font-size:.82rem; font-weight:700; color:var(--text-muted); }
.wellness-suite .well-balance-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)) 1.28fr; gap:14px; }
.wellness-suite .well-metric-card { min-height:178px; padding:18px; display:grid; grid-template-rows:auto 1fr auto; cursor:pointer; }
.wellness-suite .well-metric-icon { width:38px; height:38px; border-radius:12px; display:flex; align-items:center; justify-content:center; margin-bottom:14px; background:var(--well-soft); color:var(--well-accent); border:1px solid var(--well-line); }
.wellness-suite .well-metric-icon.energy { color:var(--accent-rose); background:rgba(244,63,94,.08); border-color:rgba(244,63,94,.16); }
.wellness-suite .well-metric-icon.sleep { color:var(--accent-purple); background:rgba(139,92,246,.08); border-color:rgba(139,92,246,.16); }
.wellness-suite .well-metric-icon.global { color:var(--accent-mint); background:rgba(16,185,129,.08); border-color:rgba(16,185,129,.16); }
.wellness-suite .well-card-label { display:block; font-size:.78rem; text-transform:uppercase; letter-spacing:.06em; font-weight:800; color:var(--text-muted); }
.wellness-suite .well-metric-value { display:block; font-family:'Space Grotesk',sans-serif; font-size:1.45rem; line-height:1.15; margin:5px 0; color:var(--text-primary); }
.wellness-suite .well-card-sub { display:block; font-size:.84rem; font-weight:600; color:var(--text-muted); }
.wellness-suite .well-sparkline { height:38px; margin-top:10px; }
.wellness-suite .well-sparkline svg { width:100%; height:100%; overflow:visible; }
.wellness-suite .well-quote-card { padding:22px; text-align:center; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:12px; background:linear-gradient(145deg,var(--well-soft),var(--card-surface)); }
.wellness-suite .well-quote-card > i { color:var(--well-accent); }
.wellness-suite .well-quote-card blockquote { font-size:.96rem; line-height:1.65; font-weight:650; color:var(--text-primary); }
.wellness-suite .well-quote-card span { font-size:.82rem; color:var(--text-muted); font-weight:700; }
.wellness-suite .well-main-split { display:grid; grid-template-columns:1.3fr 1fr; gap:16px; }
.wellness-suite .well-panel { padding:20px; }
.wellness-suite .well-panel-head { display:flex; justify-content:space-between; align-items:center; gap:14px; margin-bottom:16px; }
.wellness-suite .well-panel-head h3 { font-size:1rem; margin-top:4px; font-weight:800; color:var(--text-primary); }
.wellness-suite .well-objective-toolbar { display:flex; flex-direction:column; gap:10px; margin-bottom:14px; }
.wellness-suite .well-category-pills { flex-wrap:wrap; }
.wellness-suite .well-table-scroll { width:100%; overflow:auto; }
.wellness-suite .well-table { width:100%; border-collapse:collapse; min-width:680px; }
.wellness-suite .well-table th { padding:10px 10px; text-align:left; font-size:.78rem; color:var(--text-muted); font-weight:800; border-bottom:1px solid rgba(148,163,184,.16); white-space:nowrap; }
.wellness-suite .well-table td { padding:11px 10px; font-size:.84rem; color:var(--text-primary); border-bottom:1px solid rgba(148,163,184,.12); vertical-align:middle; }
.wellness-suite .well-table tbody tr:hover { background:rgba(148,163,184,.055); }
.wellness-suite .well-goal-name { font-weight:750; min-width:145px; }
.wellness-suite .well-progress-cell { min-width:150px; }
.wellness-suite .well-progress-row { display:flex; align-items:center; gap:8px; }
.wellness-suite .well-progress-row input[type="range"] { width:86px; accent-color:var(--well-accent); }
.wellness-suite .well-progress-value { font-family:'Space Grotesk',sans-serif; font-weight:800; min-width:38px; }
.wellness-suite .well-category-chip, .wellness-suite .well-status-chip, .wellness-suite .well-priority-chip { display:inline-flex; align-items:center; padding:4px 9px; border-radius:999px; font-size:.74rem; font-weight:800; white-space:nowrap; }
.wellness-suite .well-category-chip { background:var(--well-soft); color:var(--well-accent); }
.wellness-suite .well-priority-chip.high { background:rgba(244,63,94,.10); color:var(--accent-rose); }
.wellness-suite .well-priority-chip.medium { background:rgba(245,158,11,.12); color:#b7791f; }
.wellness-suite .well-priority-chip.low { background:rgba(16,185,129,.10); color:var(--accent-mint); }
.wellness-suite .well-week-select { width:auto; min-width:170px; }
.wellness-suite .well-habit-table { min-width:760px; }
.wellness-suite .well-habit-name { display:flex; align-items:center; gap:9px; font-weight:700; min-width:150px; }
.wellness-suite .well-habit-day { width:28px; height:28px; border-radius:50%; border:1px solid rgba(148,163,184,.28); background:transparent; cursor:pointer; display:inline-flex; align-items:center; justify-content:center; color:transparent; transition:var(--transition-smooth); }
.wellness-suite .well-habit-day.done { background:var(--well-accent); color:white; border-color:var(--well-accent); box-shadow:0 4px 10px rgba(132,76,102,.18); }
.wellness-suite .well-habit-day:hover { transform:scale(1.08); }
.wellness-suite .well-habit-footer { display:flex; justify-content:space-between; align-items:center; gap:12px; padding-top:14px; font-size:.84rem; }
.wellness-suite .well-routine-vision-split { grid-template-columns:1.08fr 1fr; }
.wellness-suite .well-routine-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.wellness-suite .well-routine-card { display:grid; grid-template-columns:38% 1fr; min-height:245px; overflow:hidden; border-radius:var(--radius-md); border:1px solid var(--card-border); background:rgba(148,163,184,.035); }
.wellness-suite .well-routine-photo { position:relative; min-height:245px; overflow:hidden; }
.wellness-suite .well-routine-photo img { width:100%; height:100%; object-fit:cover; position:absolute; inset:0; }
.wellness-suite .well-photo-btn { position:absolute; right:8px; bottom:8px; width:34px; height:34px; border-radius:50%; background:rgba(15,23,42,.72); color:white; border:1px solid rgba(255,255,255,.28); display:flex; align-items:center; justify-content:center; cursor:pointer; backdrop-filter:blur(6px); }
.wellness-suite .well-routine-content { padding:16px; }
.wellness-suite .well-routine-content h4, .wellness-suite .well-victory-card h4 { font-size:.9rem; font-weight:800; margin-bottom:12px; }
.wellness-suite .well-routine-list { display:flex; flex-direction:column; gap:9px; }
.wellness-suite .well-routine-item { display:flex; align-items:center; gap:9px; font-size:.84rem; color:var(--text-primary); cursor:pointer; line-height:1.35; }
.wellness-suite .well-routine-item input { accent-color:var(--well-accent); width:16px; height:16px; flex:0 0 auto; }
.wellness-suite .well-intention-card { margin-top:14px; padding:18px; min-height:110px; border-radius:var(--radius-md); border:1px solid var(--well-line); background:linear-gradient(135deg,var(--well-soft),transparent); display:flex; flex-direction:column; justify-content:center; text-align:center; gap:9px; }
.wellness-suite .well-intention-card p { font-size:1rem; line-height:1.55; font-weight:650; color:var(--text-primary); }
.wellness-suite .well-intention-card > i { margin:auto; color:var(--well-accent); }
.wellness-suite .well-vision-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.wellness-suite .well-vision-card { position:relative; border-radius:var(--radius-md); overflow:hidden; border:1px solid var(--card-border); background:rgba(148,163,184,.04); cursor:pointer; transition:var(--transition-smooth); }
.wellness-suite .well-vision-card:hover { transform:translateY(-3px); box-shadow:var(--shadow-hover); }
.wellness-suite .well-vision-card img { width:100%; aspect-ratio:1.25/1; object-fit:cover; display:block; }
.wellness-suite .well-vision-meta { padding:10px 11px; }
.wellness-suite .well-vision-meta strong { display:block; font-size:.84rem; }
.wellness-suite .well-vision-meta span { display:block; margin-top:2px; font-size:.76rem; color:var(--text-muted); }
.wellness-suite .well-panel-foot { display:flex; justify-content:flex-end; padding-top:12px; }
.wellness-suite .btn-text-link { border:0; background:transparent; color:var(--well-accent); font-size:.82rem; font-weight:800; cursor:pointer; display:flex; align-items:center; gap:6px; }
.wellness-suite .well-victories-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
.wellness-suite .well-victory-card { min-height:220px; border-radius:var(--radius-md); border:1px solid var(--card-border); padding:16px; background:rgba(148,163,184,.035); position:relative; text-align:center; display:flex; flex-direction:column; align-items:center; gap:9px; }
.wellness-suite .well-victory-icon { width:36px; height:36px; border-radius:50%; background:var(--well-soft); color:var(--well-accent); display:flex; align-items:center; justify-content:center; }
.wellness-suite .well-victory-card > i:last-child { margin-top:auto; color:var(--well-accent); }
.wellness-suite .well-editable { min-height:54px; width:100%; font-size:.84rem; line-height:1.55; color:var(--text-primary); outline:none; border-radius:10px; padding:6px; }
.wellness-suite .well-editable:focus { background:rgba(148,163,184,.07); box-shadow:0 0 0 2px var(--well-line); }
.wellness-suite .well-favorite-moment img { width:100%; height:92px; object-fit:cover; border-radius:12px; }
.wellness-suite .well-favorite-moment .well-photo-btn { top:86px; bottom:auto; right:20px; }
.wellness-suite .well-status-chip.planned { background:rgba(59,130,246,.10); color:var(--accent-blue); }
.wellness-suite .well-status-chip.confirmed { background:rgba(16,185,129,.10); color:var(--accent-mint); }
.wellness-suite .well-status-chip.upcoming { background:rgba(245,158,11,.12); color:#b7791f; }
.wellness-suite .well-status-chip.done { background:rgba(139,92,246,.10); color:var(--accent-purple); }
.wellness-suite .well-review-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:12px; }
.wellness-suite .well-review-card { min-height:175px; padding:16px; border-radius:var(--radius-md); border:1px solid var(--card-border); background:rgba(148,163,184,.035); display:flex; flex-direction:column; align-items:flex-start; gap:8px; }
.wellness-suite .well-review-card > span { font-size:.78rem; text-transform:uppercase; letter-spacing:.04em; font-weight:800; color:var(--text-muted); }
.wellness-suite .well-review-card > strong { font-size:1.45rem; font-family:'Space Grotesk',sans-serif; }
.wellness-suite .well-review-card > p { font-size:.8rem; color:var(--text-muted); }
.wellness-suite .well-review-icon { color:var(--well-accent); }
.wellness-suite .well-review-image-card img { width:100%; height:86px; object-fit:cover; border-radius:10px; }
.wellness-suite .well-review-image-card strong { font-size:.82rem; font-family:'Plus Jakarta Sans',sans-serif; line-height:1.35; }
.wellness-suite .well-score-card { background:linear-gradient(145deg,var(--well-soft),var(--card-surface)); align-items:center; justify-content:center; text-align:center; }
.wellness-suite .well-score-card > strong { font-size:2rem; color:var(--well-accent); }
.wellness-suite .well-review-quote { margin-top:14px; border-radius:var(--radius-md); padding:14px 18px; background:linear-gradient(90deg,var(--well-soft),rgba(255,255,255,0),var(--well-soft)); display:flex; align-items:center; justify-content:center; gap:14px; color:var(--well-accent); }
.wellness-suite .well-review-quote strong { font-size:.9rem; color:var(--text-primary); }
.wellness-suite .well-live-badge { display:inline-flex; align-items:center; gap:6px; font-size:.78rem; color:var(--accent-mint); font-weight:800; }
.wellness-suite .well-modal-card { width:min(720px,calc(100vw - 36px)); max-height:88vh; overflow:auto; }
.wellness-suite .well-modal-card.small { width:min(520px,calc(100vw - 36px)); }
.wellness-suite .well-wide-modal { width:min(920px,calc(100vw - 36px)); }
.wellness-suite .well-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.wellness-suite .well-form-grid label, .wellness-suite .well-form-label { display:block; font-size:.82rem; font-weight:800; color:var(--text-muted); margin-bottom:6px; }
.wellness-suite .well-form-wide { grid-column:1/-1; }
.wellness-suite .well-form-actions { display:flex; justify-content:flex-end; gap:10px; align-items:center; }
.wellness-suite .well-monthly-kpis { display:grid; grid-template-columns:repeat(4,1fr); gap:12px; margin-bottom:16px; }
.wellness-suite .well-monthly-kpi { border:1px solid var(--card-border); background:rgba(148,163,184,.04); border-radius:var(--radius-md); padding:16px; }
.wellness-suite .well-monthly-kpi span { display:block; font-size:.78rem; font-weight:800; color:var(--text-muted); text-transform:uppercase; }
.wellness-suite .well-monthly-kpi strong { display:block; margin-top:6px; font-family:'Space Grotesk',sans-serif; font-size:1.45rem; }
.wellness-suite .well-monthly-days { display:grid; grid-template-columns:repeat(7,1fr); gap:8px; }
.wellness-suite .well-month-day { padding:10px; min-height:72px; border-radius:12px; border:1px solid var(--card-border); background:rgba(148,163,184,.035); }
.wellness-suite .well-month-day strong { display:block; font-size:.8rem; }
.wellness-suite .well-month-day span { display:block; margin-top:5px; font-size:.78rem; color:var(--text-muted); }
.wellness-suite .well-journal-head { display:flex; justify-content:flex-end; margin-bottom:12px; }
.wellness-suite .well-journal-list { display:flex; flex-direction:column; gap:10px; }
.wellness-suite .well-journal-entry { border:1px solid var(--card-border); border-radius:var(--radius-md); padding:14px 16px; background:rgba(148,163,184,.035); cursor:pointer; }
.wellness-suite .well-journal-entry:hover { background:rgba(148,163,184,.07); }
.wellness-suite .well-journal-entry-head { display:flex; justify-content:space-between; gap:12px; align-items:center; margin-bottom:8px; }
.wellness-suite .well-journal-entry-head strong { font-size:.9rem; }
.wellness-suite .well-journal-entry-head span, .wellness-suite .well-journal-entry p { font-size:.82rem; color:var(--text-muted); line-height:1.5; }
.wellness-suite .well-inspirations-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.wellness-suite .well-inspiration-full { border:1px solid var(--card-border); border-radius:var(--radius-md); overflow:hidden; background:rgba(148,163,184,.035); }
.wellness-suite .well-inspiration-full img { width:100%; height:170px; object-fit:cover; display:block; }
.wellness-suite .well-inspiration-full div { padding:12px; }
.wellness-suite .well-inspiration-full strong { font-size:.9rem; }
.wellness-suite .well-inspiration-full p { font-size:.8rem; color:var(--text-muted); margin-top:5px; line-height:1.45; }
@media (max-width:1280px) {
  .wellness-suite .well-balance-grid { grid-template-columns:repeat(2,1fr); }
  .wellness-suite .well-quote-card { grid-column:span 2; min-height:160px; }
  .wellness-suite .well-main-split, .wellness-suite .well-routine-vision-split { grid-template-columns:1fr; }
  .wellness-suite .well-review-grid { grid-template-columns:repeat(3,1fr); }
}
@media (max-width:900px) {
  .wellness-suite .well-header-card { flex-direction:column; }
  .wellness-suite .well-header-actions { justify-content:flex-start; }
  .wellness-suite .well-routine-grid { grid-template-columns:1fr; }
  .wellness-suite .well-vision-grid, .wellness-suite .well-inspirations-grid { grid-template-columns:repeat(2,1fr); }
  .wellness-suite .well-victories-grid { grid-template-columns:repeat(2,1fr); }
  .wellness-suite .well-review-grid { grid-template-columns:repeat(2,1fr); }
  .wellness-suite .well-monthly-kpis { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:620px) {
  .wellness-suite .well-balance-grid { grid-template-columns:1fr; }
  .wellness-suite .well-quote-card { grid-column:auto; }
  .wellness-suite .well-header-actions { display:grid; grid-template-columns:1fr 1fr; width:100%; }
  .wellness-suite .well-header-actions > * { justify-content:center; }
  .wellness-suite .well-panel-head { align-items:flex-start; flex-direction:column; }
  .wellness-suite .well-vision-grid, .wellness-suite .well-victories-grid, .wellness-suite .well-review-grid, .wellness-suite .well-inspirations-grid, .wellness-suite .well-monthly-kpis { grid-template-columns:1fr; }
  .wellness-suite .well-form-grid { grid-template-columns:1fr; }
  .wellness-suite .well-form-wide { grid-column:auto; }
  .wellness-suite .well-monthly-days { grid-template-columns:repeat(2,1fr); }
}

/* Cohérence typographique et thèmes — uniquement Bien-être & OKR */
.wellness-suite .filter-pill { background:var(--card-surface); border-color:var(--card-border); color:var(--text-muted); font-size:.78rem; }
.wellness-suite .filter-pill:hover, .wellness-suite .filter-pill.active { background:var(--well-accent); color:#fff; border-color:var(--well-accent); }
.wellness-suite .modern-input { border-color:rgba(148,163,184,.24); background:rgba(255,255,255,.28); }
[data-theme="obsidian"] .wellness-suite .modern-input { background:rgba(255,255,255,.035); border-color:rgba(255,255,255,.10); }
[data-theme="gold"] .wellness-suite .modern-input { background:rgba(255,255,255,.42); border-color:rgba(155,122,55,.16); }
.wellness-suite .well-category-chip,
.wellness-suite .well-status-chip,
.wellness-suite .well-priority-chip,
.wellness-suite .well-vision-meta span { font-size:.78rem; }

.wellness-suite .well-routine-line { display:flex; align-items:center; gap:6px; }
.wellness-suite .well-routine-line .well-routine-item { flex:1; }
.wellness-suite .well-routine-add { margin-top:12px; }
.wellness-suite .well-image-field-row { display:grid; grid-template-columns:1fr auto; gap:8px; align-items:center; }


/* ==========================================================================\n   PORTAIL CLIENT — MODULE ISOLÉ (portal-*)\n   ========================================================================== */
.client-portal-suite{--portal-accent:var(--burgundy-btn);--portal-soft:rgba(138,75,86,.09);--portal-line:rgba(138,75,86,.18);position:relative;padding-bottom:18px}
.client-portal-suite::before{content:"";position:absolute;inset:-24px -20px auto;height:520px;background:radial-gradient(circle at 75% 10%,var(--portal-soft),transparent 58%);pointer-events:none;z-index:-1}
.portal-settings-cluster{margin-top:-6px}
.portal-cover-hero{min-height:210px;padding:28px 30px;color:white;background:linear-gradient(115deg,rgba(51,37,40,.84),rgba(138,75,86,.56)),url('https://images.unsplash.com/photo-1524758631624-e2822e304c36?w=1600') center/cover no-repeat;display:flex;flex-direction:column;justify-content:space-between;margin-bottom:20px;border-color:rgba(255,255,255,.22)}
.portal-cover-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(20,22,27,.58),rgba(20,22,27,.08));z-index:0}.portal-cover-hero>*{position:relative;z-index:1}
.portal-cover-topline,.portal-controlbar,.portal-panel-head,.portal-title-with-icon,.portal-progress-number,.portal-calendar-nav,.portal-deliverables-actions,.portal-final-actions{display:flex;align-items:center}.portal-cover-topline,.portal-panel-head{justify-content:space-between;gap:18px}.portal-cover-kicker{display:flex;align-items:center;gap:9px;font-size:.82rem;font-weight:800;letter-spacing:.08em}.portal-cover-copy{max-width:700px}.portal-cover-copy .page-title{color:#fff;font-size:1.9rem}.portal-cover-copy .page-subtitle{color:rgba(255,255,255,.86);font-size:.92rem;line-height:1.65}
.portal-welcome-card{display:flex;justify-content:space-between;gap:28px;padding:30px;background:linear-gradient(115deg,var(--card-surface),color-mix(in srgb,var(--card-surface) 84%,var(--portal-soft)))}.portal-welcome-main{max-width:880px}.portal-private-label{display:flex;align-items:center;gap:10px;color:var(--portal-accent);font-weight:800;letter-spacing:.06em;font-size:.82rem}.portal-round-icon{width:38px;height:38px;border-radius:13px;border:1px solid var(--portal-line);background:var(--portal-soft);display:inline-flex;align-items:center;justify-content:center;color:var(--portal-accent);flex:0 0 auto}.portal-display-title{font-family:'Space Grotesk',sans-serif;font-size:2rem;line-height:1.15;margin:14px 0 10px}.portal-welcome-main p{color:var(--text-muted);font-size:.9rem;line-height:1.7;max-width:900px}.portal-welcome-main em{display:inline-block;margin-top:12px;color:var(--portal-accent);font-size:.9rem}.portal-welcome-actions{display:flex;align-items:flex-start}
.portal-controlbar{gap:12px;flex-wrap:wrap}.portal-mode-toggle{display:flex;border:1px solid var(--card-border);background:var(--card-surface);border-radius:14px;overflow:hidden;box-shadow:var(--shadow-soft)}.portal-mode-btn{border:0;background:transparent;color:var(--text-muted);padding:10px 14px;display:flex;align-items:center;gap:7px;font-size:.82rem;font-weight:700;cursor:pointer}.portal-mode-btn.active{background:var(--portal-accent);color:#fff}.portal-project-picker{margin-left:auto;display:flex;align-items:center;gap:10px;min-width:390px}.portal-project-picker label{font-size:.8rem;color:var(--text-muted);white-space:nowrap}.portal-project-picker .modern-input{min-width:230px}.portal-sync-status,.portal-synced-pill{display:flex;align-items:center;gap:7px;font-size:.78rem;color:var(--text-muted)}.portal-sync-dot{width:8px;height:8px;border-radius:50%;background:var(--accent-mint);box-shadow:0 0 0 5px rgba(16,185,129,.10)}.portal-synced-pill{padding:8px 12px;border-radius:999px;background:rgba(16,185,129,.08);color:#16825f;font-weight:700}
.portal-panel{padding:24px}.portal-panel-head{margin-bottom:18px}.portal-panel-head h3,.portal-final-copy h3{font-family:'Space Grotesk',sans-serif;font-size:1.35rem;margin-top:4px}.portal-panel-head p,.portal-final-copy p{color:var(--text-muted);font-size:.84rem;line-height:1.55;margin-top:4px}.portal-panel-head-line{padding-bottom:16px;border-bottom:1px solid var(--card-border)}.portal-title-with-icon{gap:12px}.portal-message-count{display:flex;align-items:center;gap:6px;background:var(--portal-soft);color:var(--portal-accent);padding:9px 12px;border-radius:999px;font-weight:800}.portal-messages-list{display:flex;flex-direction:column;max-height:420px;overflow:auto}.portal-message{padding:15px 0;border-bottom:1px solid var(--card-border)}.portal-message:last-child{border-bottom:0}.portal-message-head{display:flex;justify-content:space-between;gap:16px;margin-bottom:6px}.portal-message-head strong{font-size:.86rem}.portal-message-head time{font-size:.76rem;color:var(--text-light)}.portal-message-meta{font-size:.77rem;color:var(--text-muted);margin-bottom:5px}.portal-message p{font-size:.86rem;line-height:1.55}.portal-message.client{padding-left:14px;border-left:3px solid var(--portal-accent)}.portal-message.linked p::before{content:'↳ ';color:var(--portal-accent);font-weight:800}.portal-reply-box{display:grid;grid-template-columns:1fr auto;gap:10px;align-items:end;margin-top:14px}.portal-reply-box .btn-glow-primary{height:42px}
.portal-contact-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:13px}.portal-contact-grid label{display:flex;flex-direction:column;gap:6px}.portal-contact-grid label>span,.portal-form-grid label>span,.portal-project-meta-table label>span{font-size:.76rem;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.portal-contact-wide{grid-column:span 2}.portal-contact-notes{grid-column:span 3}.portal-project-linked-card{border:1px solid var(--portal-line);border-radius:14px;padding:14px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(145deg,var(--portal-soft),transparent)}.portal-project-linked-card span{font-size:.74rem;font-weight:800;color:var(--text-muted)}.portal-project-linked-card strong{font-family:'Space Grotesk';font-size:1.12rem;margin:5px 0}.portal-project-linked-card p{font-size:.8rem;color:var(--text-muted)}.portal-project-linked-card small{font-size:.76rem;color:var(--portal-accent);font-weight:700;margin-top:5px}
.portal-progress-panel{display:grid;grid-template-columns:300px 1fr;padding:0;overflow:hidden}.portal-progress-hero{padding:28px;border-right:1px solid var(--card-border);display:flex;flex-direction:column;justify-content:center}.portal-progress-number{justify-content:space-between;gap:16px;margin:16px 0 10px}.portal-progress-number strong{font-family:'Space Grotesk';font-size:2.75rem}.portal-progress-number span{font-size:.86rem;color:var(--text-muted)}.portal-progress-track{height:8px;background:rgba(0,0,0,.06);border-radius:999px;overflow:hidden}.portal-progress-track>div{height:100%;background:linear-gradient(90deg,var(--portal-accent),color-mix(in srgb,var(--portal-accent) 55%,white));width:0;border-radius:inherit;transition:width .3s ease}.portal-progress-helper{font-size:.76rem;color:var(--text-muted);margin-top:9px}.portal-project-meta-table{display:grid;grid-template-columns:1.2fr 1fr 1.2fr .9fr .8fr .8fr 1fr;align-items:end;padding:22px;gap:10px}.portal-project-meta-table label{display:flex;flex-direction:column;gap:7px}.portal-project-meta-table .modern-input{padding:9px 10px;font-size:.78rem}
.portal-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.portal-panel-head.compact{align-items:flex-start}.portal-calendar-nav{gap:7px}.portal-calendar-nav strong{min-width:120px;text-align:center;font-size:.88rem}.portal-calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}.portal-cal-cell{min-height:43px;border-radius:10px;display:flex;align-items:center;justify-content:center;position:relative;font-size:.8rem;cursor:pointer;border:1px solid transparent}.portal-cal-cell.head{min-height:28px;color:var(--text-muted);font-weight:800;cursor:default}.portal-cal-cell.muted{opacity:.28}.portal-cal-cell.today{border-color:var(--portal-accent);font-weight:800}.portal-cal-cell.selected{background:var(--portal-soft);color:var(--portal-accent);font-weight:800}.portal-cal-cell.has-event::after{content:'';position:absolute;bottom:5px;width:5px;height:5px;border-radius:50%;background:var(--portal-accent)}.portal-calendar-events{margin-top:13px;display:flex;flex-direction:column;gap:7px}.portal-calendar-event{padding:9px 11px;background:rgba(0,0,0,.025);border-radius:10px;font-size:.8rem;display:flex;justify-content:space-between;gap:10px}.portal-calendar-event span:last-child{color:var(--text-muted)}
.portal-video-shell{min-height:300px;border:1px solid var(--portal-line);border-radius:18px;background:linear-gradient(145deg,var(--portal-soft),rgba(255,255,255,.02));display:flex;align-items:center;justify-content:center;overflow:hidden}.portal-video-empty{text-align:center;max-width:330px;padding:24px}.portal-video-empty .portal-video-play{width:58px;height:58px;margin:0 auto 16px;border-radius:18px;display:flex;align-items:center;justify-content:center;background:var(--portal-soft);color:var(--portal-accent)}.portal-video-empty h4{font-family:'Space Grotesk';font-size:1.18rem;margin-bottom:7px}.portal-video-empty p{font-size:.84rem;color:var(--text-muted);line-height:1.55}.portal-video-shell video,.portal-video-shell iframe{width:100%;height:300px;border:0;object-fit:cover}
.portal-workflow-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.portal-phase-card{min-width:0}.portal-phase-title{display:flex;align-items:center;gap:10px;margin-bottom:8px}.portal-phase-title .portal-phase-icon{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:var(--portal-soft);color:var(--portal-accent);border:1px solid var(--portal-line)}.portal-phase-title h4{font-family:'Space Grotesk';font-size:1rem}.portal-phase-sub{font-size:.76rem;font-weight:800;color:var(--portal-accent);letter-spacing:.04em;margin-bottom:9px;text-transform:uppercase}.portal-task-table{width:100%;border-collapse:separate;border-spacing:0;border:1px solid var(--card-border);border-radius:12px;overflow:hidden}.portal-task-table th,.portal-task-table td{padding:8px 7px;border-bottom:1px solid var(--card-border);font-size:.76rem;text-align:left;vertical-align:middle}.portal-task-table th{background:rgba(0,0,0,.025);font-size:.7rem;text-transform:uppercase;letter-spacing:.03em}.portal-task-table tr:last-child td{border-bottom:0}.portal-task-table select,.portal-task-table input{width:100%;border:1px solid var(--card-border);border-radius:8px;background:var(--card-surface);color:var(--text-primary);padding:6px 7px;font-size:.72rem}.portal-task-status{display:inline-flex;align-items:center;gap:5px}.portal-workflow-legend{display:flex;gap:14px;flex-wrap:wrap;margin-top:18px;padding-top:14px;border-top:1px solid var(--card-border);font-size:.76rem;color:var(--text-muted)}.portal-workflow-legend span{display:flex;align-items:center;gap:6px}.portal-status-dot{width:7px;height:7px;border-radius:50%;display:inline-block}.portal-status-dot.done{background:#62a167}.portal-status-dot.progress{background:#5a8eb4}.portal-status-dot.complete{background:#d99a20}.portal-status-dot.waiting{background:#e98231}.portal-status-dot.validate{background:#9865a7}.portal-status-dot.todo{background:#a0a0a0}
.portal-deliverables-head{align-items:flex-end}.portal-deliverables-actions{gap:8px}.portal-deliverables-actions .modern-input{min-width:190px}.portal-deliverables-summary{display:grid;grid-template-columns:1.2fr 1fr;gap:20px;padding:15px;border:1px solid var(--card-border);border-radius:14px;background:rgba(0,0,0,.02);margin-bottom:14px}.portal-deliverables-summary strong{font-size:.85rem}.portal-deliverables-summary p,.portal-deliverables-summary span{font-size:.78rem;color:var(--text-muted)}.portal-summary-progress{display:inline-block;vertical-align:middle;width:56%;height:7px;border-radius:999px;background:rgba(0,0,0,.07);overflow:hidden;margin:0 10px}.portal-summary-progress div{height:100%;width:0;background:var(--portal-accent)}.portal-deliverables-list{display:flex;flex-direction:column;gap:12px}.portal-delivery-section{display:grid;grid-template-columns:220px 1fr;border:1px solid var(--card-border);border-radius:15px;overflow:hidden}.portal-delivery-cover{min-height:190px;background-size:cover;background-position:center;position:relative}.portal-delivery-cover::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,20,20,.06),rgba(20,20,20,.72))}.portal-delivery-cover-copy{position:absolute;inset:auto 18px 16px;color:white;z-index:1}.portal-delivery-cover-copy span{font-family:'Space Grotesk';font-size:1.45rem}.portal-delivery-cover-copy h4{font-family:'Space Grotesk';font-size:1.05rem;margin:4px 0}.portal-delivery-cover-copy p{font-size:.78rem;line-height:1.45;color:rgba(255,255,255,.86)}.portal-delivery-table{width:100%;border-collapse:collapse}.portal-delivery-table th,.portal-delivery-table td{padding:11px 10px;border-bottom:1px solid var(--card-border);font-size:.78rem;text-align:left}.portal-delivery-table th{font-size:.72rem;color:var(--text-muted);text-transform:uppercase}.portal-delivery-table tr:last-child td{border-bottom:0}.portal-doc-title{display:flex;align-items:center;gap:7px;font-weight:700}.portal-doc-status-select{border:1px solid var(--card-border);background:var(--card-surface);color:var(--text-primary);border-radius:999px;padding:6px 9px;font-size:.72rem;font-weight:700}.portal-doc-actions{display:flex;gap:5px}.portal-doc-action{width:31px;height:31px;border-radius:9px;border:1px solid var(--card-border);background:var(--card-surface);color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer}.portal-doc-action:hover{color:var(--portal-accent);border-color:var(--portal-line);background:var(--portal-soft)}
.portal-final-delivery{padding:26px;background:linear-gradient(120deg,color-mix(in srgb,var(--card-surface) 76%,#2d211d),color-mix(in srgb,var(--card-surface) 72%,#775b49));display:grid;grid-template-columns:1.1fr 1.4fr auto;gap:20px;align-items:center}.portal-final-copy .eyebrow{color:var(--portal-accent)}.portal-final-copy h3{margin:7px 0}.portal-final-files{display:grid;grid-template-columns:repeat(5,minmax(84px,1fr));gap:8px}.portal-final-file{height:88px;border:1px solid var(--card-border);border-radius:12px;background:rgba(255,255,255,.10);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;text-align:center;padding:8px}.portal-final-file span{font-size:.72rem;font-weight:700}.portal-final-actions{flex-direction:column;align-items:stretch;gap:8px}.portal-final-actions button{justify-content:center}
.portal-modal-backdrop{z-index:120}.portal-modal-card{width:min(620px,calc(100vw - 32px))}.portal-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.portal-form-grid label{display:flex;flex-direction:column;gap:6px}.portal-form-wide{grid-column:1/-1}.portal-form-actions{display:flex;justify-content:flex-end;gap:8px;margin-top:4px}
.client-portal-suite[data-portal-mode="client"] .portal-designer-only{display:none!important}.client-portal-suite[data-portal-mode="client"] .portal-contact-grid input,.client-portal-suite[data-portal-mode="client"] .portal-contact-grid select,.client-portal-suite[data-portal-mode="client"] .portal-project-meta-table input,.client-portal-suite[data-portal-mode="client"] .portal-project-meta-table select{pointer-events:none;background:rgba(0,0,0,.02)}.client-portal-suite[data-portal-mode="client"] .portal-task-table select,.client-portal-suite[data-portal-mode="client"] .portal-task-table input{pointer-events:none;opacity:.78}.client-portal-suite[data-portal-mode="client"] .portal-doc-status-select{pointer-events:none}.client-portal-suite.portal-bg-custom{padding:18px;border-radius:24px;background:linear-gradient(var(--portal-bg-overlay,rgba(244,243,240,.88)),var(--portal-bg-overlay,rgba(244,243,240,.88))),var(--portal-bg-image) center/cover fixed}
[data-theme="obsidian"] .client-portal-suite{--portal-soft:rgba(229,151,173,.09);--portal-line:rgba(229,151,173,.20);--portal-accent:#d58ba0}[data-theme="obsidian"] .client-portal-suite.portal-bg-custom{--portal-bg-overlay:rgba(8,12,20,.90)}[data-theme="gold"] .client-portal-suite{--portal-accent:#9d7c2f;--portal-soft:rgba(157,124,47,.10);--portal-line:rgba(157,124,47,.20)}[data-theme="gold"] .client-portal-suite.portal-bg-custom{--portal-bg-overlay:rgba(244,241,234,.89)}
@media(max-width:1200px){.portal-contact-grid{grid-template-columns:repeat(2,1fr)}.portal-contact-notes{grid-column:span 1}.portal-progress-panel{grid-template-columns:240px 1fr}.portal-project-meta-table{grid-template-columns:repeat(3,1fr)}.portal-final-delivery{grid-template-columns:1fr}.portal-final-actions{flex-direction:row}.portal-workflow-grid{grid-template-columns:1fr}.portal-delivery-section{grid-template-columns:190px 1fr}}
@media(max-width:850px){.portal-project-picker{margin-left:0;min-width:100%;flex-direction:column;align-items:flex-start}.portal-project-picker .modern-input{width:100%}.portal-two-col{grid-template-columns:1fr}.portal-progress-panel{grid-template-columns:1fr}.portal-progress-hero{border-right:0;border-bottom:1px solid var(--card-border)}.portal-project-meta-table{grid-template-columns:repeat(2,1fr)}.portal-delivery-section{grid-template-columns:1fr}.portal-delivery-cover{min-height:180px}.portal-deliverables-summary{grid-template-columns:1fr}.portal-final-files{grid-template-columns:repeat(3,1fr)}}
@media(max-width:620px){.portal-cover-hero{min-height:250px;padding:22px}.portal-cover-topline{align-items:flex-start;flex-direction:column}.portal-welcome-card{padding:22px;flex-direction:column}.portal-display-title{font-size:1.65rem}.portal-contact-grid,.portal-project-meta-table,.portal-form-grid{grid-template-columns:1fr}.portal-contact-wide,.portal-contact-notes,.portal-form-wide{grid-column:auto}.portal-reply-box{grid-template-columns:1fr}.portal-final-files{grid-template-columns:repeat(2,1fr)}.portal-final-actions{flex-direction:column}}


/* ==========================================================================\n   10. PARAMÈTRES — D&A NEXUS CONTROL CENTER (isolé)\n   ========================================================================== */
.settings-global-bg{position:fixed;inset:-45px;z-index:0;pointer-events:none;background-position:center;background-size:cover;background-repeat:no-repeat;opacity:0;filter:blur(18px);transform:scale(1.035);transition:opacity .35s ease,filter .35s ease;background-image:var(--settings-bg-image,none)}
.nexus-cursor-light{position:fixed;left:0;top:0;width:320px;height:320px;border-radius:50%;pointer-events:none;z-index:3;transform:translate(-50%,-50%);opacity:0;background:radial-gradient(circle,rgba(255,255,255,var(--cursor-light-alpha,.16)) 0%,rgba(14,165,233,.06) 28%,transparent 68%);mix-blend-mode:soft-light;transition:opacity .18s ease}
html[data-theme="obsidian"] .nexus-cursor-light{mix-blend-mode:screen;background:radial-gradient(circle,rgba(255,255,255,var(--cursor-light-alpha,.13)) 0%,rgba(56,189,248,.08) 30%,transparent 70%)}
html[data-theme="gold"] .nexus-cursor-light{background:radial-gradient(circle,rgba(255,248,225,var(--cursor-light-alpha,.16)) 0%,rgba(197,160,69,.08) 30%,transparent 70%)}
html[data-cursor-light="on"] .nexus-cursor-light{opacity:.92}
html[data-spotlight="off"] .spotlight-card::before{display:none!important}
html[data-motion="off"] *,html[data-motion="off"] *::before,html[data-motion="off"] *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
html[data-noise="off"] .noise-overlay{display:none!important}
html[data-ui-scale="comfortable"]{font-size:16.5px}
html[data-ui-scale="large"]{font-size:17px}
html[data-glass="solid"][data-theme="titanium"]{--card-surface:rgba(255,255,255,.97)}
html[data-glass="balanced"][data-theme="titanium"]{--card-surface:rgba(255,255,255,.90)}
html[data-glass="crystal"][data-theme="titanium"]{--card-surface:rgba(255,255,255,.76)}
html[data-glass="solid"][data-theme="obsidian"]{--card-surface:rgba(17,24,39,.96)}
html[data-glass="balanced"][data-theme="obsidian"]{--card-surface:rgba(17,24,39,.88)}
html[data-glass="crystal"][data-theme="obsidian"]{--card-surface:rgba(17,24,39,.72)}
html[data-glass="solid"][data-theme="gold"]{--card-surface:rgba(255,255,255,.96)}
html[data-glass="balanced"][data-theme="gold"]{--card-surface:rgba(255,255,255,.88)}
html[data-glass="crystal"][data-theme="gold"]{--card-surface:rgba(255,255,255,.75)}
html[data-glass] .spotlight-card,html[data-glass] .topbar-glass{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}

.settings-suite{--settings-accent:var(--burgundy-btn);--settings-soft:rgba(138,75,86,.09);--settings-line:rgba(138,75,86,.18);padding-bottom:12px}
[data-theme="obsidian"] .settings-suite{--settings-accent:#d68ba0;--settings-soft:rgba(214,139,160,.10);--settings-line:rgba(214,139,160,.20)}
[data-theme="gold"] .settings-suite{--settings-accent:#9d7c2f;--settings-soft:rgba(157,124,47,.10);--settings-line:rgba(157,124,47,.20)}
.settings-hero{min-height:210px;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:30px 34px;background:linear-gradient(135deg,var(--card-surface),rgba(138,75,86,.07));overflow:visible}
[data-theme="obsidian"] .settings-hero{background:linear-gradient(135deg,var(--card-surface),rgba(214,139,160,.08))}
[data-theme="gold"] .settings-hero{background:linear-gradient(135deg,var(--card-surface),rgba(157,124,47,.09))}
.settings-hero-copy{max-width:820px}.settings-hero-copy .page-title{font-size:1.8rem;margin:5px 0 7px}.settings-hero-copy .page-subtitle{max-width:760px;line-height:1.65}
.settings-hero-badges{display:flex;gap:9px;flex-wrap:wrap;margin-top:18px}.settings-status-pill{display:inline-flex;align-items:center;gap:7px;padding:8px 12px;border:1px solid var(--card-border);background:rgba(255,255,255,.28);border-radius:999px;font-size:.78rem;font-weight:700;color:var(--text-muted)}.settings-status-pill.success{color:var(--accent-mint);background:rgba(16,185,129,.07);border-color:rgba(16,185,129,.18)}
.settings-health-orbit{min-width:160px;text-align:center}.settings-health-ring{width:126px;height:126px;border-radius:50%;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:auto;background:conic-gradient(var(--settings-accent) 0 100%,rgba(0,0,0,.06) 0);position:relative;box-shadow:0 16px 45px rgba(0,0,0,.08)}.settings-health-ring::after{content:'';position:absolute;inset:9px;border-radius:50%;background:var(--card-surface);border:1px solid var(--card-border)}.settings-health-ring strong,.settings-health-ring span{position:relative;z-index:1}.settings-health-ring strong{font-family:'Space Grotesk',sans-serif;font-size:1.7rem}.settings-health-ring span{font-size:.74rem;color:var(--text-muted);font-weight:700}.settings-health-label{margin-top:10px;font-size:.72rem;color:var(--text-muted);font-weight:800;text-transform:uppercase;letter-spacing:.08em}
.settings-overview-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.settings-overview-card{padding:18px;display:flex;align-items:center;gap:13px;min-height:102px}.settings-overview-icon,.settings-card-icon,.settings-toggle-icon,.settings-data-icon{width:38px;height:38px;border-radius:12px;background:var(--settings-soft);color:var(--settings-accent);display:flex;align-items:center;justify-content:center;flex:none;border:1px solid var(--settings-line)}.settings-overview-card small{display:block;font-size:.68rem;color:var(--text-muted);font-weight:800;letter-spacing:.08em}.settings-overview-card strong{display:block;font-size:1rem;margin:3px 0}.settings-overview-card span:last-child{font-size:.74rem;color:var(--text-muted)}
.settings-nav{display:flex;gap:7px;align-items:center;padding:8px;position:sticky;top:62px;z-index:35;overflow-x:auto}.settings-nav-btn{border:0;background:transparent;color:var(--text-muted);padding:10px 13px;border-radius:11px;font-size:.79rem;font-weight:750;display:flex;align-items:center;gap:7px;cursor:pointer;white-space:nowrap}.settings-nav-btn:hover{background:rgba(0,0,0,.035);color:var(--text-primary)}.settings-nav-btn.active{background:var(--settings-accent);color:#fff;box-shadow:0 7px 20px rgba(138,75,86,.20)}.settings-nav-btn.danger:not(.active){margin-left:auto;color:#b45358}
.settings-panel{display:none;animation:viewFade .22s ease}.settings-panel.active{display:block}.settings-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:14px}.settings-section-head h3{font-size:1.18rem;margin:3px 0 4px}.settings-section-head p{font-size:.82rem;color:var(--text-muted);line-height:1.55;max-width:760px}
.settings-studio-grid{display:grid;grid-template-columns:290px 1fr;gap:16px}.settings-profile-card{padding:28px 22px;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:380px}.settings-avatar-shell{width:112px;height:112px;border-radius:30px;position:relative;border:1px solid var(--settings-line);background:var(--settings-soft);padding:5px;margin-bottom:17px}.settings-avatar-shell img{width:100%;height:100%;border-radius:25px;object-fit:cover;background:linear-gradient(135deg,var(--settings-soft),var(--card-surface))}.settings-avatar-action{position:absolute;right:-6px;bottom:-6px;width:36px;height:36px;border-radius:12px;border:1px solid var(--card-border);background:var(--card-surface);color:var(--settings-accent);display:flex;align-items:center;justify-content:center;cursor:pointer;box-shadow:var(--shadow-soft)}.settings-profile-card h3{font-size:1.25rem}.settings-profile-card>p{font-size:.82rem;color:var(--text-muted);margin:5px 0 18px}.settings-profile-meta{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.settings-profile-meta span{display:flex;align-items:center;gap:6px;font-size:.72rem;color:var(--text-muted);padding:7px 9px;background:rgba(0,0,0,.025);border-radius:999px}
.settings-form-card{padding:24px}.settings-form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:15px}.settings-form-grid label,.settings-field{display:flex;flex-direction:column;gap:7px}.settings-form-grid label>span,.settings-field>span{font-size:.76rem;font-weight:800;color:var(--text-muted)}.settings-form-wide{grid-column:1/-1}
.settings-theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:18px}.settings-theme-card{border:1px solid var(--card-border);background:var(--card-surface);border-radius:22px;padding:13px;text-align:left;color:var(--text-primary);cursor:pointer;box-shadow:var(--shadow-soft);position:relative;transition:var(--transition-smooth)}.settings-theme-card:hover{transform:translateY(-2px);box-shadow:var(--shadow-hover)}.settings-theme-card.active{border-color:var(--settings-accent);box-shadow:0 0 0 3px var(--settings-soft),var(--shadow-hover)}.settings-theme-card>div:last-of-type{padding:12px 5px 6px}.settings-theme-card strong{display:block;font-size:.95rem}.settings-theme-card span{display:block;font-size:.76rem;color:var(--text-muted);margin-top:4px}.settings-theme-check{position:absolute;right:20px;bottom:21px;width:27px;height:27px;border-radius:50%;display:none;align-items:center;justify-content:center;background:var(--settings-accent);color:#fff}.settings-theme-card.active .settings-theme-check{display:flex}.settings-theme-preview{height:132px;border-radius:16px;padding:15px;display:grid;grid-template-columns:28% 1fr;grid-template-rows:24px 1fr;gap:8px;overflow:hidden}.settings-theme-preview>span{grid-column:2;grid-row:1;border-radius:999px}.settings-theme-preview>i:first-child{grid-row:1/3;border-radius:9px}.settings-theme-preview>i:nth-child(2),.settings-theme-preview>i:nth-child(3){border-radius:10px}.settings-theme-preview.titanium{background:linear-gradient(135deg,#eef0f3,#cbd0d7)}.settings-theme-preview.titanium i,.settings-theme-preview.titanium span{background:rgba(255,255,255,.83)}.settings-theme-preview.obsidian{background:linear-gradient(135deg,#090d15,#1b2432)}.settings-theme-preview.obsidian i,.settings-theme-preview.obsidian span{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.08)}.settings-theme-preview.gold{background:linear-gradient(135deg,#f2eee5,#d1c39e)}.settings-theme-preview.gold i,.settings-theme-preview.gold span{background:rgba(255,255,255,.64);border:1px solid rgba(157,124,47,.12)}
.settings-two-col{display:grid;grid-template-columns:1fr 1fr;gap:16px}.settings-three-col{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:16px}.settings-control-card{padding:22px}.settings-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:17px}.settings-card-head>div{display:flex;align-items:flex-start;gap:11px}.settings-card-head h4{font-size:.96rem;margin:1px 0 4px}.settings-card-head p,.settings-helper{font-size:.77rem;color:var(--text-muted);line-height:1.5}.settings-bg-preview{height:145px;border-radius:16px;border:1px dashed var(--settings-line);background:linear-gradient(135deg,var(--settings-soft),rgba(255,255,255,.05));background-size:cover;background-position:center;display:flex;align-items:center;justify-content:center;color:var(--text-muted);font-size:.78rem;font-weight:700;overflow:hidden}.settings-bg-preview span{display:flex;gap:8px;align-items:center;padding:9px 12px;border-radius:999px;background:var(--card-surface);border:1px solid var(--card-border);backdrop-filter:blur(12px)}.settings-inline-actions{display:flex;gap:9px;margin:12px 0 6px}.settings-range-row{display:block;margin-top:15px}.settings-range-row>span{display:flex;justify-content:space-between;align-items:center;margin-bottom:7px}.settings-range-row b{font-size:.77rem}.settings-range-row small{font-size:.74rem;color:var(--text-muted)}.settings-range-row input[type=range]{width:100%;accent-color:var(--settings-accent)}
.settings-live-preview{height:205px;border-radius:18px;display:grid;grid-template-columns:24% 1fr;gap:10px;padding:12px;background:linear-gradient(135deg,var(--bg-app),rgba(138,75,86,.05));border:1px solid var(--card-border);overflow:hidden}.settings-preview-sidebar{border-radius:12px;background:var(--sidebar-metal);padding:12px 8px;display:flex;flex-direction:column;gap:8px}.settings-preview-sidebar i{height:10px;border-radius:999px;background:rgba(255,255,255,.58)}.settings-preview-main{padding:5px}.settings-preview-pill{display:block;width:62%;height:14px;border-radius:999px;background:var(--card-surface);box-shadow:var(--shadow-soft);margin-bottom:14px}.settings-preview-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.settings-preview-cards i{height:58px;border-radius:12px;background:var(--card-surface);border:1px solid var(--card-border);box-shadow:var(--shadow-soft)}.settings-preview-chart{height:70px;margin-top:9px;border-radius:12px;background:var(--card-surface);border:1px solid var(--card-border);display:flex;align-items:flex-end;gap:7px;padding:12px}.settings-preview-chart b{flex:1;border-radius:5px 5px 2px 2px;background:linear-gradient(180deg,var(--settings-accent),rgba(138,75,86,.32))}.settings-preview-chart b:nth-child(1){height:30%}.settings-preview-chart b:nth-child(2){height:60%}.settings-preview-chart b:nth-child(3){height:42%}.settings-preview-chart b:nth-child(4){height:78%}.settings-preview-chart b:nth-child(5){height:55%}.settings-font-lock{display:flex;gap:9px;align-items:flex-start;padding:12px 13px;border-radius:13px;background:rgba(16,185,129,.06);border:1px solid rgba(16,185,129,.15);margin-top:13px;color:var(--accent-mint)}.settings-font-lock strong{display:block;font-size:.77rem}.settings-font-lock span{display:block;font-size:.72rem;color:var(--text-muted);margin-top:2px;line-height:1.45}
.settings-segmented{display:flex;padding:4px;border-radius:12px;background:rgba(0,0,0,.035);border:1px solid var(--card-border)}.settings-segmented button{flex:1;border:0;background:transparent;color:var(--text-muted);padding:9px 8px;border-radius:9px;font-size:.76rem;font-weight:800;cursor:pointer}.settings-segmented button.active{background:var(--card-surface);color:var(--settings-accent);box-shadow:var(--shadow-soft)}
.settings-switch{position:relative;display:inline-flex;flex:none}.settings-switch input{position:absolute;opacity:0;pointer-events:none}.settings-switch span{width:46px;height:26px;border-radius:999px;background:rgba(100,116,139,.24);position:relative;cursor:pointer;transition:.22s ease}.settings-switch span::after{content:'';position:absolute;width:20px;height:20px;left:3px;top:3px;border-radius:50%;background:#fff;box-shadow:0 2px 7px rgba(0,0,0,.17);transition:.22s ease}.settings-switch input:checked+span{background:var(--settings-accent)}.settings-switch input:checked+span::after{transform:translateX(20px)}
.settings-toggle-list{padding:4px 20px}.settings-toggle-row{display:grid;grid-template-columns:42px 1fr auto;gap:13px;align-items:center;padding:16px 2px;border-bottom:1px solid var(--card-border)}.settings-toggle-row:last-child{border-bottom:0}.settings-toggle-row strong{font-size:.85rem}.settings-toggle-row p{font-size:.76rem;color:var(--text-muted);margin-top:3px}.settings-mini-toggle-grid{display:grid;grid-template-columns:1fr 1fr;gap:9px}.settings-mini-toggle-grid label{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 12px;border:1px solid var(--card-border);background:rgba(0,0,0,.02);border-radius:12px;font-size:.77rem;font-weight:700}.settings-mini-toggle-grid input{width:17px;height:17px;accent-color:var(--settings-accent)}.settings-permission-badge{padding:6px 9px;border-radius:999px;font-size:.68rem;font-weight:800;background:rgba(245,158,11,.09);color:#b7791f}.settings-permission-badge.granted{background:rgba(16,185,129,.08);color:var(--accent-mint)}
.settings-automation-list{display:flex;flex-direction:column;gap:10px}.settings-automation-row{display:grid;grid-template-columns:48px 1fr auto auto;gap:14px;align-items:center;padding:16px 18px}.settings-auto-icon{width:42px;height:42px;border-radius:13px;display:flex;align-items:center;justify-content:center}.settings-auto-icon.finance{background:rgba(16,185,129,.08);color:var(--accent-mint)}.settings-auto-icon.project{background:rgba(59,130,246,.08);color:var(--accent-blue)}.settings-auto-icon.portal{background:var(--settings-soft);color:var(--settings-accent)}.settings-auto-icon.wellness{background:rgba(139,92,246,.08);color:var(--accent-purple)}.settings-automation-row strong{font-size:.87rem}.settings-automation-row p{font-size:.76rem;color:var(--text-muted);line-height:1.45;margin-top:3px}.settings-module-chip{font-size:.66rem;font-weight:850;letter-spacing:.06em;padding:6px 8px;border-radius:999px;background:rgba(0,0,0,.035);color:var(--text-muted)}
.settings-time-preview{margin-top:18px;padding:14px;border-radius:13px;background:var(--settings-soft);border:1px solid var(--settings-line)}.settings-time-preview span{font-size:.72rem;color:var(--text-muted)}.settings-time-preview strong{display:block;font-family:'Space Grotesk',sans-serif;font-size:1.6rem;margin-top:3px}.settings-data-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.settings-data-card{padding:20px;display:grid;grid-template-columns:46px 1fr auto;align-items:center;gap:14px}.settings-data-card h4{font-size:.9rem}.settings-data-card p{font-size:.76rem;color:var(--text-muted);margin-top:3px;line-height:1.45}.settings-data-card.danger{border-color:rgba(180,83,88,.22);background:linear-gradient(135deg,var(--card-surface),rgba(180,83,88,.045))}.settings-danger-btn{border:1px solid rgba(180,83,88,.28);background:rgba(180,83,88,.08);color:#b45358;padding:9px 13px;border-radius:10px;font-size:.76rem;font-weight:800;cursor:pointer}.settings-system-info{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-top:16px;padding:18px}.settings-system-info div{padding:12px;border-radius:12px;background:rgba(0,0,0,.025)}.settings-system-info span{font-size:.69rem;color:var(--text-muted);font-weight:800;text-transform:uppercase;letter-spacing:.05em}.settings-system-info strong{display:block;margin-top:4px;font-size:.78rem;word-break:break-word}

/* Préférences du Portail Client — visibilité uniquement, aucune donnée supprimée */
#client-portal-suite.portal-pref-hide-contact #portal-client-info-section{display:none!important}
#client-portal-suite.portal-pref-hide-progress .portal-progress-panel{display:none!important}
#client-portal-suite.portal-pref-hide-calendar .portal-calendar-card{display:none!important}
#client-portal-suite.portal-pref-hide-video .portal-video-card{display:none!important}
#client-portal-suite.portal-pref-hide-calendar .portal-two-col,#client-portal-suite.portal-pref-hide-video .portal-two-col{grid-template-columns:1fr}
#client-portal-suite.portal-pref-hide-calendar.portal-pref-hide-video .portal-two-col{display:none!important}
#client-portal-suite.portal-pref-hide-deliverables #portal-deliverables-section,#client-portal-suite.portal-pref-hide-deliverables .portal-final-delivery{display:none!important}
#client-portal-suite.portal-pref-no-comments [data-portal-doc-comment],#client-portal-suite.portal-pref-no-comments #portal-global-comment,#client-portal-suite.portal-pref-no-comments #portal-message-form{display:none!important}
#client-portal-suite.portal-pref-no-downloads [data-portal-doc-download],#client-portal-suite.portal-pref-no-downloads #portal-download-zip{display:none!important}

@media(max-width:1180px){.settings-overview-grid,.settings-theme-grid{grid-template-columns:repeat(2,1fr)}.settings-three-col{grid-template-columns:1fr}.settings-studio-grid{grid-template-columns:1fr}.settings-profile-card{min-height:auto}.settings-nav{top:56px}.settings-data-grid{grid-template-columns:1fr}}
@media(max-width:780px){.settings-hero{align-items:flex-start;padding:24px;flex-direction:column}.settings-health-orbit{align-self:center}.settings-overview-grid,.settings-theme-grid,.settings-two-col,.settings-form-grid,.settings-system-info{grid-template-columns:1fr}.settings-nav{position:relative;top:auto}.settings-nav-btn.danger:not(.active){margin-left:0}.settings-automation-row{grid-template-columns:44px 1fr auto}.settings-module-chip{display:none}.settings-data-card{grid-template-columns:42px 1fr}.settings-data-card button{grid-column:1/-1}.settings-mini-toggle-grid{grid-template-columns:1fr}}

.settings-suite .modern-input{background:rgba(255,255,255,.30);border-color:var(--card-border);min-height:40px}
[data-theme="obsidian"] .settings-suite .modern-input{background:rgba(255,255,255,.035);border-color:rgba(255,255,255,.10)}
[data-theme="gold"] .settings-suite .modern-input{background:rgba(255,255,255,.42);border-color:rgba(157,124,47,.16)}
.settings-suite .modern-input:focus{border-color:var(--settings-accent);box-shadow:0 0 0 3px var(--settings-soft)}


/* ==========================================================================\n   AUTHENTIFICATION, COMPTE & CLOUD — D&A NEXUS V8\n   ========================================================================== */
body.nexus-auth-locked { overflow: hidden; }
.nexus-auth-shell,.nexus-onboarding-shell{position:fixed;inset:0;z-index:5000;display:none;align-items:center;justify-content:center;overflow:auto;padding:32px;background:var(--bg-app);color:var(--text-primary)}
.nexus-auth-shell.active,.nexus-onboarding-shell.active{display:flex}
.nexus-auth-aurora{position:absolute;inset:0;overflow:hidden;pointer-events:none;background:radial-gradient(circle at 50% 20%,rgba(255,255,255,.42),transparent 35%),linear-gradient(145deg,var(--bg-app),color-mix(in srgb,var(--bg-app) 84%,var(--accent-purple) 16%))}
.auth-orb{position:absolute;border-radius:999px;filter:blur(72px);opacity:.34;animation:authFloat 16s ease-in-out infinite alternate}
.auth-orb-a{width:420px;height:420px;left:-80px;bottom:-80px;background:var(--accent-cyan)}
.auth-orb-b{width:480px;height:340px;right:-80px;top:40px;background:var(--accent-purple);animation-delay:-4s}
.auth-orb-c{width:260px;height:260px;left:58%;bottom:6%;background:var(--accent-rose);animation-delay:-9s;opacity:.19}
@keyframes authFloat{from{transform:translate3d(-12px,12px,0) scale(.96)}to{transform:translate3d(22px,-18px,0) scale(1.07)}}
.nexus-auth-topmark{position:absolute;top:26px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;z-index:2;white-space:nowrap}.nexus-auth-topmark strong{font-family:'Space Grotesk',sans-serif;letter-spacing:.08em;font-size:.95rem}.nexus-auth-topmark>span:last-child{font-size:.76rem;color:var(--text-muted);padding-left:10px;border-left:1px solid var(--card-border)}
.nexus-auth-logo{width:38px;height:38px;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(255,255,255,.28));border:1px solid rgba(255,255,255,.72);box-shadow:0 14px 34px rgba(15,23,42,.12),inset 0 1px rgba(255,255,255,.9);color:var(--accent-cyan)}
[data-theme="obsidian"] .nexus-auth-logo{background:linear-gradient(145deg,rgba(30,41,59,.9),rgba(15,23,42,.58));border-color:rgba(255,255,255,.12)}
.nexus-auth-stage{position:relative;z-index:2;width:min(560px,100%);margin:auto}.nexus-auth-card{position:relative;overflow:hidden;padding:38px;border-radius:34px;background:color-mix(in srgb,var(--card-surface) 82%,transparent);border:1px solid color-mix(in srgb,var(--card-border) 88%,white 12%);box-shadow:0 35px 90px rgba(15,23,42,.16),inset 0 1px 0 rgba(255,255,255,.58);backdrop-filter:blur(34px) saturate(1.3)}
.auth-card-glow{position:absolute;width:280px;height:280px;top:-180px;left:50%;transform:translateX(-50%);background:radial-gradient(circle,var(--card-spotlight),transparent 70%);pointer-events:none}.auth-head{text-align:center;margin-bottom:24px}.auth-eyebrow{display:block;font-size:.72rem;font-weight:800;letter-spacing:.1em;color:var(--text-muted);margin-bottom:8px}.auth-head h1{font:700 clamp(2.2rem,6vw,3.3rem)/1 'Space Grotesk',sans-serif;letter-spacing:-.045em;margin:0;color:var(--text-primary)}.auth-head p{margin-top:10px;color:var(--text-muted);font-size:.92rem}
.auth-mode-tabs{display:grid;grid-template-columns:1fr 1fr;gap:5px;background:rgba(15,23,42,.05);border:1px solid var(--card-border);padding:5px;border-radius:999px;margin:0 auto 20px}.auth-mode-tabs button{border:0;background:transparent;color:var(--text-muted);border-radius:999px;padding:10px 14px;font-weight:700;cursor:pointer;transition:var(--transition-smooth)}.auth-mode-tabs button.active{background:var(--card-surface);color:var(--text-primary);box-shadow:var(--shadow-soft)}
.auth-social-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.auth-glass-btn{min-height:52px;border-radius:18px;border:1px solid var(--card-border);background:linear-gradient(145deg,color-mix(in srgb,var(--card-surface) 92%,white 8%),color-mix(in srgb,var(--card-surface) 86%,transparent));color:var(--text-primary);box-shadow:0 10px 26px rgba(15,23,42,.07),inset 0 1px rgba(255,255,255,.7);display:flex;align-items:center;justify-content:center;gap:10px;font-weight:750;cursor:pointer;transition:var(--transition-smooth)}.auth-glass-btn:hover{transform:translateY(-2px);box-shadow:0 16px 34px rgba(15,23,42,.11),inset 0 1px rgba(255,255,255,.7)}.auth-glass-btn svg{width:22px;height:22px}.auth-glass-btn[hidden]{display:none}
.auth-divider{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;margin:22px 0}.auth-divider span{height:1px;background:var(--card-border)}.auth-divider b{font-size:.7rem;letter-spacing:.1em;color:var(--text-light)}
.nexus-auth-form{min-height:126px}.auth-step{display:none;animation:authStepIn .34s cubic-bezier(.16,1,.3,1)}.auth-step.active{display:block}@keyframes authStepIn{from{opacity:0;transform:translateY(8px);filter:blur(5px)}to{opacity:1;transform:none;filter:none}}.auth-field-label{display:block;font-weight:750;font-size:.78rem;color:var(--text-muted);margin:0 0 8px 10px}.auth-input-shell{position:relative;display:flex;align-items:center;gap:10px;min-height:58px;border-radius:999px;padding:7px 8px 7px 17px;background:linear-gradient(145deg,color-mix(in srgb,var(--card-surface) 90%,transparent),color-mix(in srgb,var(--card-surface) 72%,transparent));border:1px solid var(--card-border);box-shadow:inset 0 1px rgba(255,255,255,.64),0 10px 28px rgba(15,23,42,.06);transition:var(--transition-smooth)}.auth-input-shell:focus-within{border-color:color-mix(in srgb,var(--accent-cyan) 48%,var(--card-border));box-shadow:0 0 0 4px color-mix(in srgb,var(--accent-cyan) 10%,transparent),0 15px 34px rgba(15,23,42,.08)}.auth-input-shell>i{color:var(--text-muted);flex:none}.auth-input-shell input{flex:1;min-width:0;border:0;outline:0;background:transparent;color:var(--text-primary);font:600 .9rem 'Plus Jakarta Sans',sans-serif}.auth-input-shell input::placeholder{color:var(--text-light)}.auth-next-icon,.auth-eye{width:42px;height:42px;border-radius:999px;border:1px solid var(--card-border);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:var(--transition-smooth)}.auth-next-icon{background:linear-gradient(135deg,var(--accent-cyan),var(--accent-blue));color:white;border:0;box-shadow:0 8px 20px color-mix(in srgb,var(--accent-cyan) 26%,transparent)}.auth-next-icon:hover{transform:scale(1.05)}.auth-eye{background:transparent;color:var(--text-muted)}.auth-inline-meta{display:flex;align-items:center;justify-content:space-between;margin:0 8px 14px;font-size:.76rem;color:var(--text-muted)}.auth-inline-meta button,.auth-link-btn{border:0;background:transparent;color:var(--accent-cyan);font-weight:750;cursor:pointer}.auth-link-btn{margin:12px 8px 0;padding:0}.auth-status{min-height:22px;margin-top:14px;text-align:center;font-size:.8rem;color:var(--text-muted)}.auth-status.error{color:var(--accent-rose)}.auth-status.success{color:var(--accent-mint)}.auth-status.loading:before{content:'';display:inline-block;width:11px;height:11px;border:2px solid currentColor;border-right-color:transparent;border-radius:50%;margin-right:7px;vertical-align:-2px;animation:authSpin .7s linear infinite}@keyframes authSpin{to{transform:rotate(360deg)}}
.auth-local-preview{margin-top:16px;padding:12px 14px;border:1px dashed color-mix(in srgb,var(--accent-amber) 55%,var(--card-border));border-radius:16px;background:color-mix(in srgb,var(--accent-amber) 7%,transparent);font-size:.74rem;color:var(--text-muted)}.auth-local-preview>div{display:flex;gap:8px;align-items:flex-start}.auth-local-preview button{margin-top:10px;width:100%;border:1px solid var(--card-border);background:var(--card-surface);color:var(--text-primary);padding:9px 12px;border-radius:12px;font-weight:750;cursor:pointer}.auth-legal{text-align:center;color:var(--text-light);font-size:.68rem;margin-top:18px}
.nexus-onboarding-shell{background:color-mix(in srgb,var(--bg-app) 92%,black 8%)}.onboarding-card{width:min(720px,100%);padding:34px;border-radius:32px;background:var(--card-surface);border:1px solid var(--card-border);box-shadow:0 34px 90px rgba(15,23,42,.18);position:relative;overflow:hidden}.onboarding-card:before{content:'';position:absolute;inset:0 0 auto;height:4px;background:linear-gradient(90deg,var(--accent-cyan),var(--accent-purple),var(--accent-rose))}.onboarding-top{display:flex;align-items:center;gap:14px;margin-bottom:22px}.onboarding-top h2{font:700 1.55rem 'Space Grotesk',sans-serif}.onboarding-progress{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-bottom:28px}.onboarding-progress span{height:5px;border-radius:99px;background:rgba(15,23,42,.08)}.onboarding-progress span.active{background:linear-gradient(90deg,var(--accent-cyan),var(--accent-blue))}.onboarding-step{display:none;min-height:270px}.onboarding-step.active{display:grid;align-content:start;gap:16px;animation:authStepIn .3s ease}.onboarding-step h3{font:700 1.3rem 'Space Grotesk',sans-serif}.onboarding-step>p{color:var(--text-muted);margin-top:-8px}.onboarding-step label{display:grid;gap:7px;font-size:.78rem;font-weight:750;color:var(--text-muted)}.onboarding-actions{display:flex;justify-content:space-between;gap:12px;margin-top:18px}.onboard-theme-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.onboard-theme-grid button{border:1px solid var(--card-border);background:transparent;color:var(--text-primary);padding:10px;border-radius:18px;text-align:left;cursor:pointer;transition:var(--transition-smooth)}.onboard-theme-grid button.active{border-color:var(--accent-cyan);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent-cyan) 10%,transparent)}.onboard-theme-preview{display:block;height:100px;border-radius:13px;margin-bottom:10px;border:1px solid rgba(255,255,255,.6)}.onboard-theme-preview.titanium{background:linear-gradient(145deg,#f4f3f0,#c5cad1)}.onboard-theme-preview.obsidian{background:linear-gradient(145deg,#111827,#05070c)}.onboard-theme-preview.gold{background:linear-gradient(145deg,#f4f1ea,#c9bd91)}.onboard-theme-grid strong,.onboard-theme-grid small{display:block}.onboard-theme-grid small{color:var(--text-muted);margin-top:2px}
.nexus-account-zone{position:relative;margin-bottom:10px}.nexus-account-chip{width:100%;display:grid;grid-template-columns:34px 1fr 24px;align-items:center;gap:9px;padding:8px;border-radius:14px;border:1px solid rgba(0,0,0,.06);background:rgba(255,255,255,.46);color:var(--text-primary);cursor:pointer;text-align:left;transition:var(--transition-smooth)}[data-theme="obsidian"] .nexus-account-chip{background:rgba(255,255,255,.05);border-color:rgba(255,255,255,.08)}.nexus-account-chip:hover{transform:translateY(-1px);background:rgba(255,255,255,.68)}[data-theme="obsidian"] .nexus-account-chip:hover{background:rgba(255,255,255,.08)}.nexus-account-avatar,.settings-account-avatar{display:inline-flex;align-items:center;justify-content:center;border-radius:11px;background:linear-gradient(135deg,var(--accent-cyan),var(--accent-purple));color:white;font-weight:800;font-size:.72rem;box-shadow:0 6px 16px color-mix(in srgb,var(--accent-purple) 18%,transparent)}.nexus-account-avatar{width:34px;height:34px}.nexus-account-copy{min-width:0}.nexus-account-copy strong,.nexus-account-copy small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nexus-account-copy strong{font-size:.72rem}.nexus-account-copy small{font-size:.62rem;color:var(--text-muted);margin-top:2px}.nexus-account-cloud{display:flex;align-items:center;justify-content:center;color:var(--accent-mint)}.nexus-account-cloud.offline{color:var(--accent-amber)}.nexus-account-popover{position:absolute;left:0;right:0;bottom:calc(100% + 8px);z-index:80;padding:8px;border:1px solid var(--card-border);background:var(--card-surface);backdrop-filter:blur(20px);border-radius:16px;box-shadow:0 20px 50px rgba(15,23,42,.18);display:none}.nexus-account-popover.active{display:block}.nexus-account-popover-head{padding:8px 9px 10px;border-bottom:1px solid var(--card-border);margin-bottom:5px}.nexus-account-popover-head strong,.nexus-account-popover-head span{display:block}.nexus-account-popover-head strong{font-size:.76rem}.nexus-account-popover-head span{font-size:.66rem;color:var(--text-muted);margin-top:2px}.nexus-account-popover button{width:100%;display:flex;align-items:center;gap:8px;border:0;background:transparent;color:var(--text-primary);padding:8px 9px;border-radius:10px;font-size:.7rem;font-weight:700;cursor:pointer;text-align:left}.nexus-account-popover button:hover{background:rgba(15,23,42,.05)}.nexus-account-popover button.danger{color:var(--accent-rose)}
.settings-account-grid{display:grid;grid-template-columns:.8fr 1.5fr;gap:16px;margin-bottom:16px}.settings-account-profile,.settings-cloud-card{padding:24px}.settings-account-profile{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.settings-account-avatar{width:58px;height:58px;border-radius:18px;font-size:1rem}.settings-account-profile h3{font:700 1.15rem 'Space Grotesk',sans-serif}.settings-account-profile p{color:var(--text-muted);font-size:.8rem}.settings-account-provider{margin-top:auto;display:flex;align-items:center;gap:7px;font-size:.72rem;color:var(--accent-mint);font-weight:750}.settings-cloud-kpis{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.settings-cloud-kpis>div{padding:13px;border:1px solid var(--card-border);border-radius:14px;background:rgba(15,23,42,.02)}.settings-cloud-kpis span,.settings-cloud-kpis strong{display:block}.settings-cloud-kpis span{font-size:.62rem;font-weight:800;color:var(--text-muted);letter-spacing:.07em}.settings-cloud-kpis strong{font-size:.82rem;margin-top:4px}.settings-cloud-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.settings-security-note{display:flex;align-items:flex-start;gap:13px;padding:20px}.settings-security-note>i{color:var(--accent-mint);margin-top:2px}.settings-security-note p{color:var(--text-muted);font-size:.76rem;margin-top:3px;line-height:1.55}.settings-security-note code{font-family:'Space Grotesk',monospace}
@media(max-width:720px){.nexus-auth-shell,.nexus-onboarding-shell{padding:18px}.nexus-auth-card{padding:28px 20px;border-radius:26px}.nexus-auth-topmark>span:last-child{display:none}.auth-social-grid,.onboard-theme-grid,.settings-account-grid,.settings-cloud-kpis{grid-template-columns:1fr}.onboarding-step{min-height:auto}.onboard-theme-preview{height:72px}.settings-cloud-actions{flex-direction:column}.settings-cloud-actions button{width:100%}}

.auth-social-grid.single{grid-template-columns:1fr}.auth-glass-btn:disabled{opacity:.5;cursor:not-allowed;transform:none!important}

/* ========================================================================== 
   V9 — ACCÈS CLIENT SÉCURISÉ + MESSAGERIE CLOUD (portal-access-*)
   ========================================================================== */
.auth-client-invite-banner{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid color-mix(in srgb,var(--accent-cyan) 32%,transparent);background:linear-gradient(135deg,rgba(14,165,233,.08),rgba(139,92,246,.07));border-radius:18px;margin:4px 0 18px;box-shadow:var(--shadow-soft)}
.auth-client-invite-banner[hidden]{display:none!important}.auth-client-invite-icon{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--card-surface);color:var(--accent-cyan);border:1px solid var(--card-border);box-shadow:var(--shadow-soft);flex:0 0 auto}.auth-client-invite-banner>div:last-child{display:flex;flex-direction:column;gap:3px;min-width:0}.auth-client-invite-banner span{font-size:.78rem;font-weight:800;letter-spacing:.07em;color:var(--accent-cyan)}.auth-client-invite-banner strong{font-size:1rem;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.auth-client-invite-banner p{font-size:.84rem;color:var(--text-muted);line-height:1.45}
.auth-client-magic-link{width:100%;border:1px solid var(--card-border);background:var(--card-surface);color:var(--text-primary);border-radius:999px;padding:12px 16px;display:flex;align-items:center;justify-content:center;gap:9px;font-size:.86rem;font-weight:750;cursor:pointer;box-shadow:var(--shadow-soft);margin:0 0 14px;transition:var(--transition-smooth)}.auth-client-magic-link:hover{transform:translateY(-1px);box-shadow:var(--shadow-hover);border-color:color-mix(in srgb,var(--accent-cyan) 35%,var(--card-border))}.auth-client-magic-link[hidden]{display:none!important}

.portal-client-session-header{display:none}.nexus-client-session .sidebar-titanium{display:none!important}.nexus-client-session .topbar-glass{display:none!important}.nexus-client-session .viewport-main{max-width:none;width:100%;padding:22px clamp(18px,4vw,64px) 54px}.nexus-client-session #view-portail{display:block!important}.nexus-client-session .nexus-view:not(#view-portail){display:none!important}.nexus-client-session .client-portal-suite{max-width:1500px;margin:0 auto}.nexus-client-session .portal-client-session-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:14px 18px;margin-bottom:18px;border:1px solid var(--card-border);border-radius:20px;background:color-mix(in srgb,var(--card-surface) 88%,transparent);backdrop-filter:blur(18px);box-shadow:var(--shadow-soft);position:sticky;top:12px;z-index:45}.portal-client-session-brand,.portal-client-session-user{display:flex;align-items:center;gap:11px}.portal-client-session-logo{width:40px;height:40px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--accent-cyan),var(--accent-purple));color:white;box-shadow:0 8px 20px rgba(59,130,246,.18)}.portal-client-session-brand>div,.portal-client-session-user>div{display:flex;flex-direction:column;gap:2px}.portal-client-session-brand strong,.portal-client-session-user strong,.portal-client-session-project strong{font-size:.9rem;color:var(--text-primary)}.portal-client-session-brand span,.portal-client-session-user span,.portal-client-session-project span{font-size:.78rem;color:var(--text-muted)}.portal-client-session-project{display:flex;align-items:center;gap:9px;padding:8px 14px;border-radius:999px;background:var(--card-surface);border:1px solid var(--card-border)}.nexus-client-session .portal-mode-toggle,.nexus-client-session .portal-project-picker,.nexus-client-session .portal-sync-status{display:none!important}

.portal-message-compose{min-width:0}.portal-message-compose-tools{display:flex;align-items:center;gap:10px;margin-top:8px;min-height:34px}.portal-message-compose-tools .btn-secondary{padding:7px 10px}.portal-message-attachment-name{font-size:.8rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:360px}.portal-message-attachment{display:inline-flex;align-items:center;gap:8px;margin-top:9px;padding:8px 10px;border-radius:10px;background:var(--portal-soft);color:var(--portal-accent);border:1px solid var(--portal-line);font-size:.8rem;font-weight:700;text-decoration:none}.portal-message-attachment:hover{filter:brightness(.98)}.portal-message-cloud-badge{display:inline-flex;align-items:center;gap:5px;margin-left:7px;font-size:.74rem;color:var(--accent-mint);font-weight:700}

.portal-access-backdrop{z-index:180}.portal-access-modal-card{width:min(780px,calc(100vw - 34px));max-height:90vh;overflow:auto;padding:24px}.portal-access-modal-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding-bottom:16px;border-bottom:1px solid var(--card-border)}.portal-access-modal-head h3{font-family:'Space Grotesk',sans-serif;font-size:1.32rem;margin:3px 0}.portal-access-modal-head p{font-size:.86rem;color:var(--text-muted)}.portal-access-status-strip{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px 16px;margin:16px 0;border-radius:15px;background:rgba(0,0,0,.025);border:1px solid var(--card-border)}.portal-access-state-dot{width:11px;height:11px;border-radius:50%;background:#94a3b8;box-shadow:0 0 0 5px rgba(148,163,184,.10)}.portal-access-state-dot.invited{background:var(--accent-amber);box-shadow:0 0 0 5px rgba(245,158,11,.10)}.portal-access-state-dot.active{background:var(--accent-mint);box-shadow:0 0 0 5px rgba(16,185,129,.10)}.portal-access-state-dot.revoked{background:var(--accent-rose);box-shadow:0 0 0 5px rgba(244,63,94,.10)}.portal-access-status-strip>div{display:flex;flex-direction:column;gap:2px}.portal-access-status-strip strong{font-size:.9rem}.portal-access-status-strip span{font-size:.8rem;color:var(--text-muted)}.portal-access-last-seen{white-space:nowrap}.portal-access-form-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:13px}.portal-access-form-grid label{display:flex;flex-direction:column;gap:7px}.portal-access-form-grid label>span{font-size:.8rem;font-weight:800;color:var(--text-muted)}.portal-access-permissions{margin-top:18px;padding:17px;border:1px solid var(--card-border);border-radius:16px;background:rgba(0,0,0,.018)}.portal-access-permissions-head{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:13px}.portal-access-permissions-head>div{display:flex;flex-direction:column;gap:3px}.portal-access-permissions-head strong{font-size:.92rem}.portal-access-permissions-head>div>span{font-size:.8rem;color:var(--text-muted)}.portal-access-permission-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:9px}.portal-access-permission-grid label{cursor:pointer}.portal-access-permission-grid input{position:absolute;opacity:0;pointer-events:none}.portal-access-permission-grid label>span{display:flex;align-items:center;gap:9px;padding:11px 12px;border:1px solid var(--card-border);border-radius:12px;background:var(--card-surface);color:var(--text-muted);transition:var(--transition-smooth)}.portal-access-permission-grid label>span b{font-size:.84rem}.portal-access-permission-grid input:checked+span{border-color:var(--portal-line);background:var(--portal-soft);color:var(--portal-accent);box-shadow:inset 0 0 0 1px var(--portal-line)}.portal-access-link-box{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-top:16px;padding:14px 15px;border-radius:15px;background:linear-gradient(135deg,var(--portal-soft),transparent);border:1px solid var(--portal-line)}.portal-access-link-box>div{min-width:0;display:flex;flex-direction:column;gap:3px}.portal-access-link-box span{font-size:.76rem;color:var(--portal-accent);font-weight:800;letter-spacing:.06em}.portal-access-link-box strong{font-size:.84rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-access-security-note{display:flex;align-items:flex-start;gap:10px;padding:13px 14px;margin-top:12px;border-radius:13px;background:rgba(16,185,129,.07);color:#16825f}.portal-access-security-note p{font-size:.8rem;line-height:1.5}.portal-access-actions{display:flex;align-items:center;gap:9px;margin-top:17px}.portal-access-actions-spacer{flex:1}

.client-portal-suite.portal-access-hide-progress .portal-progress-panel{display:none!important}.client-portal-suite.portal-access-hide-calendar .portal-calendar-card{display:none!important}.client-portal-suite.portal-access-hide-video .portal-video-card{display:none!important}.client-portal-suite.portal-access-hide-contact #portal-client-info-section{display:none!important}.client-portal-suite.portal-access-hide-deliverables #portal-deliverables-section,.client-portal-suite.portal-access-hide-deliverables .portal-final-delivery{display:none!important}.client-portal-suite.portal-access-hide-messages #portal-messaging-section{display:none!important}.client-portal-suite.portal-access-no-downloads [data-portal-doc-download],.client-portal-suite.portal-access-no-downloads #portal-download-zip{display:none!important}.client-portal-suite.portal-access-hide-prices #portal-meta-budget{visibility:hidden}.client-portal-suite.portal-access-hide-prices label:has(#portal-meta-budget){display:none!important}

@media(max-width:760px){.nexus-client-session .viewport-main{padding:12px 12px 36px}.nexus-client-session .portal-client-session-header{top:6px;flex-wrap:wrap}.portal-client-session-project{order:3;width:100%;justify-content:center}.portal-client-session-user .action-pill-btn{font-size:0;width:40px;padding:9px;justify-content:center}.portal-client-session-user .action-pill-btn svg{margin:0}.portal-access-form-grid,.portal-access-permission-grid{grid-template-columns:1fr}.portal-access-status-strip{grid-template-columns:auto 1fr}.portal-access-last-seen{grid-column:2}.portal-access-actions{flex-wrap:wrap}.portal-access-actions-spacer{display:none}.portal-access-actions button{flex:1;justify-content:center}.portal-message-attachment-name{max-width:180px}}
.btn-proj-pill.portal-access-active{border-color:rgba(16,185,129,.28);background:rgba(16,185,129,.08);color:#16825f}
[data-theme="obsidian"] .btn-proj-pill.portal-access-active{color:#63d9ad;background:rgba(16,185,129,.10)}
.portal-message-receipt{display:inline-flex;align-items:center;gap:4px;margin-left:9px;color:var(--text-light);font-size:.74rem;font-weight:700}

/* ==========================================================================\n   D&A NEXUS V10 — PORTAIL CLIENT DIRECT SANS COMPTE\n   ========================================================================== */
.nexus-auth-shell.portal-direct-mode .auth-mode-tabs,
.nexus-auth-shell.portal-direct-mode .auth-social-grid,
.nexus-auth-shell.portal-direct-mode .auth-divider,
.nexus-auth-shell.portal-direct-mode .auth-client-magic-link,
.nexus-auth-shell.portal-direct-mode .nexus-auth-form,
.nexus-auth-shell.portal-direct-mode .auth-local-preview,
.nexus-auth-shell.portal-direct-mode .auth-legal,
.nexus-auth-shell.portal-direct-mode #auth-status{display:none!important}
.nexus-auth-shell.portal-direct-mode .nexus-auth-card{max-width:620px;padding:clamp(28px,4vw,54px);min-height:0}
.nexus-auth-shell.portal-direct-mode .auth-head{margin-bottom:20px}
.nexus-auth-shell.portal-direct-mode .auth-head h1{max-width:none}
.nexus-auth-shell.portal-direct-mode .auth-client-invite-banner{margin:0 0 18px}
.auth-client-direct-loader{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:10px;padding:24px 18px;border-radius:20px;border:1px solid var(--card-border);background:color-mix(in srgb,var(--card-surface) 88%,transparent);box-shadow:var(--shadow-soft);color:var(--text-primary)}
.auth-client-direct-loader[hidden]{display:none!important}
.auth-client-direct-loader strong{font-family:'Space Grotesk',sans-serif;font-size:1.04rem;letter-spacing:-.015em}
.auth-client-direct-loader>span:last-child{font-size:.88rem;line-height:1.55;color:var(--text-muted)}
.portal-direct-spinner{width:32px;height:32px;border-radius:50%;border:3px solid color-mix(in srgb,var(--accent-cyan) 18%,var(--card-border));border-top-color:var(--accent-cyan);animation:portalDirectSpin .8s linear infinite}
.auth-client-direct-loader.error{border-color:color-mix(in srgb,#ef4444 28%,var(--card-border));background:color-mix(in srgb,#ef4444 5%,var(--card-surface));color:#b91c1c}
.auth-client-direct-loader.error>span:last-child{color:var(--text-muted)}
@keyframes portalDirectSpin{to{transform:rotate(360deg)}}
.portal-access-form-grid label>span small{font-size:.78em;font-weight:600;color:var(--text-muted)}
@media(max-width:640px){.nexus-auth-shell.portal-direct-mode .nexus-auth-card{padding:24px 18px}.auth-client-direct-loader{padding:20px 14px}}


/* ==========================================================================\n   V11 — THEMES UNIFIÉS + OBSIDIAN CONTRASTE + RÉSERVOIR MODIFIABLE + NOTIFS\n   ========================================================================== */

/* Les actions primaires et les progressions suivent désormais le thème actif. */
.btn-cta-gradient,
.btn-glow-primary,
.btn-primary-burgundy,
.pomo-act-btn.primary {
  background: linear-gradient(135deg, var(--theme-accent), var(--theme-accent-2)) !important;
  color: var(--theme-on-accent) !important;
  border-color: transparent !important;
  box-shadow: 0 8px 24px color-mix(in srgb, var(--theme-accent) 24%, transparent) !important;
}
.filter-pill.active,
.filter-pill:hover,
.settings-nav-btn.active,
.portal-mode-btn.active {
  background: var(--theme-accent) !important;
  border-color: var(--theme-accent) !important;
  color: var(--theme-on-accent) !important;
}
.proj-progress-fill,
.fluid-progress-bar.cyan,
.portal-summary-progress div,
.life-kpi-progress > span,
.life-travel-progress > span,
.demand-progress-fill {
  background: linear-gradient(90deg, var(--theme-accent), var(--theme-accent-2)) !important;
  color: var(--theme-on-accent) !important;
}
.pomo-meter-fill { stroke: var(--theme-accent) !important; }
input[type="range"] { accent-color: var(--theme-accent); }

/* Cartes / cadres qui étaient figés en blanc : ils suivent la surface du thème. */
.gallery-tile,
.project-card-antonya,
.doc-list-entry.active,
.btn-editor-action,
.download-dropdown-menu,
.editor-pill-select,
.editor-textarea-container,
.filter-pill,
.proj-status-select,
.proj-priority-badge,
.proj-kpi-grid,
.btn-proj-pill {
  background: var(--card-surface);
  border-color: var(--card-border);
  color: var(--text-primary);
}
.proj-progress-track { background: color-mix(in srgb, var(--text-muted) 14%, transparent); }
.project-card-antonya { border-color: var(--card-border); }
.btn-proj-pill:hover,.btn-editor-action:hover { background: color-mix(in srgb,var(--theme-accent-soft) 70%,var(--card-surface)); border-color:var(--theme-accent-line); }

/* Réservoir créatif : changement d'image au survol, sans sacrifier le lightbox. */
.gallery-tile { border-color: color-mix(in srgb,var(--theme-accent) 15%,var(--card-border)); }
.gallery-edit-btn {
  position:absolute; top:8px; right:8px; z-index:3;
  display:inline-flex; align-items:center; gap:5px;
  border:1px solid rgba(255,255,255,.42); background:rgba(8,15,26,.66); color:#fff;
  backdrop-filter:blur(12px); border-radius:999px; padding:6px 9px;
  font-size:.68rem; font-weight:800; cursor:pointer; opacity:0; transform:translateY(-3px);
  transition:var(--transition-smooth); box-shadow:0 6px 18px rgba(0,0,0,.14);
}
.gallery-tile:hover .gallery-edit-btn,.gallery-edit-btn:focus-visible { opacity:1; transform:translateY(0); }
.gallery-edit-btn:hover { background:color-mix(in srgb,var(--theme-accent) 78%,#101827); }
.gallery-image-updating::after { content:'Optimisation…'; position:absolute; inset:0; display:grid; place-items:center; background:rgba(8,15,26,.58); color:white; font-size:.76rem; font-weight:800; z-index:4; backdrop-filter:blur(4px); }

/* Obsidian : contraste renforcé partout, notamment le centre documentaire. */
[data-theme="obsidian"] body { color-scheme: dark; }
[data-theme="obsidian"] .noise-overlay { background-image:radial-gradient(rgba(255,255,255,.035) 1px,transparent 0); }
[data-theme="obsidian"] .spotlight-card,
[data-theme="obsidian"] .project-card-antonya,
[data-theme="obsidian"] .doc-panel-column,
[data-theme="obsidian"] .doc-list-entry.active,
[data-theme="obsidian"] .editor-textarea-container,
[data-theme="obsidian"] .proj-kpi-grid,
[data-theme="obsidian"] .portal-panel,
[data-theme="obsidian"] .settings-panel {
  background:rgba(17,24,39,.94) !important;
  border-color:rgba(255,255,255,.12) !important;
}
[data-theme="obsidian"] input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),
[data-theme="obsidian"] select,
[data-theme="obsidian"] textarea,
[data-theme="obsidian"] .modern-input,
[data-theme="obsidian"] .editor-pill-select,
[data-theme="obsidian"] .proj-status-select,
[data-theme="obsidian"] .proj-priority-badge {
  background:#111a29 !important;
  color:#f8fafc !important;
  border-color:rgba(255,255,255,.14) !important;
  -webkit-text-fill-color:#f8fafc;
  caret-color:#f8fafc;
}
[data-theme="obsidian"] input::placeholder,[data-theme="obsidian"] textarea::placeholder { color:#8695ab !important; -webkit-text-fill-color:#8695ab; opacity:1; }
[data-theme="obsidian"] select option { background:#111827; color:#f8fafc; }
[data-theme="obsidian"] .editor-title-field { color:#f8fafc !important; -webkit-text-fill-color:#f8fafc; }
[data-theme="obsidian"] .editor-textarea { background:transparent !important; color:#f8fafc !important; -webkit-text-fill-color:#f8fafc; }
[data-theme="obsidian"] .btn-editor-action,
[data-theme="obsidian"] .btn-proj-pill,
[data-theme="obsidian"] .filter-pill,
[data-theme="obsidian"] .download-dropdown-menu { background:#111a29 !important; color:#eaf0f8 !important; border-color:rgba(255,255,255,.13) !important; }
[data-theme="obsidian"] .download-dropdown-menu button { color:#eaf0f8; }
[data-theme="obsidian"] .download-dropdown-menu button:hover { background:rgba(140,166,211,.12); color:#fff; }
[data-theme="obsidian"] .proj-progress-track,.portal-progress-track,.portal-summary-progress { background:rgba(255,255,255,.10) !important; }
[data-theme="obsidian"] kbd { background:rgba(255,255,255,.08); border-color:rgba(255,255,255,.12); color:#c7d2e2; }
[data-theme="obsidian"] .theme-btn.active { background:#1d2939; border-color:rgba(255,255,255,.18); }

/* Notifications globales */
.topbar-right-actions { position:relative; }
.notification-anchor { position:relative; }
.notification-trigger { position:relative; }
.notification-badge { min-width:19px;height:19px;padding:0 5px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--theme-accent);color:var(--theme-on-accent);font:800 .62rem 'Space Grotesk',sans-serif;box-shadow:0 0 0 3px var(--card-surface); }
.notification-badge[hidden]{display:none!important}
.notification-popover { position:absolute; right:0; top:calc(100% + 12px); width:min(430px,calc(100vw - 32px)); max-height:min(620px,78vh); overflow:hidden; display:none; flex-direction:column; background:color-mix(in srgb,var(--card-surface) 95%,transparent); border:1px solid var(--card-border); border-radius:20px; box-shadow:0 24px 70px rgba(15,23,42,.20); backdrop-filter:blur(24px); z-index:170; }
.notification-popover.active{display:flex;animation:notifIn .18s ease-out}@keyframes notifIn{from{opacity:0;transform:translateY(-5px) scale(.98)}to{opacity:1;transform:none}}
.notification-popover-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:17px 18px 13px;border-bottom:1px solid var(--card-border)}.notification-popover-head h3{font:800 1rem 'Space Grotesk',sans-serif;margin-top:2px;color:var(--text-primary)}
.notification-summary{padding:10px 18px;font-size:.76rem;color:var(--text-muted);background:var(--theme-accent-soft);border-bottom:1px solid var(--card-border)}
.notification-list{overflow:auto;padding:8px;display:flex;flex-direction:column;gap:5px;min-height:80px}.notification-empty{padding:28px 18px;text-align:center;color:var(--text-muted);font-size:.8rem}.notification-item{width:100%;border:1px solid transparent;background:transparent;color:var(--text-primary);border-radius:14px;padding:11px 12px;display:grid;grid-template-columns:36px 1fr auto;gap:10px;text-align:left;cursor:pointer;transition:var(--transition-smooth)}.notification-item:hover{background:var(--theme-accent-soft);border-color:var(--theme-accent-line)}.notification-item.is-read{opacity:.62}.notification-icon{width:36px;height:36px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:var(--theme-accent-soft);color:var(--theme-accent);border:1px solid var(--theme-accent-line)}.notification-icon.warning{color:#c27a12;background:rgba(245,158,11,.09);border-color:rgba(245,158,11,.2)}.notification-icon.danger{color:#d44a5c;background:rgba(244,63,94,.08);border-color:rgba(244,63,94,.18)}.notification-copy{min-width:0}.notification-copy strong{display:block;font-size:.81rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.notification-copy span{display:block;color:var(--text-muted);font-size:.72rem;line-height:1.45;margin-top:2px}.notification-time{font-size:.66rem;color:var(--text-light);white-space:nowrap}.notification-popover-foot{display:flex;justify-content:space-between;gap:8px;padding:11px 12px;border-top:1px solid var(--card-border)}.notification-popover-foot .btn-secondary{font-size:.71rem;padding:7px 10px}
[data-theme="obsidian"] .notification-popover{background:rgba(10,16,27,.97);border-color:rgba(255,255,255,.12);box-shadow:0 28px 80px rgba(0,0,0,.48)}
@media(max-width:760px){.topbar-right-actions{gap:6px}.notification-trigger span{display:none}.notification-trigger{width:40px;padding:9px;justify-content:center}.notification-popover{position:fixed;top:72px;right:12px;left:12px;width:auto}.notification-popover-foot{flex-wrap:wrap}.notification-popover-foot button{flex:1}}

/* V11 — accents de modules alignés sur le thème global */
.accounting-suite { --acct-accent:var(--theme-accent) !important; --acct-accent-soft:var(--theme-accent-soft) !important; }
.wellness-suite { --well-accent:var(--theme-accent) !important; --well-soft:var(--theme-accent-soft) !important; --well-line:var(--theme-accent-line) !important; }
.client-portal-suite { --portal-accent:var(--theme-accent) !important; --portal-soft:var(--theme-accent-soft) !important; --portal-line:var(--theme-accent-line) !important; }
.settings-suite { --settings-accent:var(--theme-accent) !important; --settings-soft:var(--theme-accent-soft) !important; --settings-line:var(--theme-accent-line) !important; }
.fluid-progress-bar { background:linear-gradient(90deg,var(--theme-accent),var(--theme-accent-2)) !important; }
.acct-mini-progress span,.acct-breakdown-track i,.acct-goal-progress i { background:linear-gradient(90deg,var(--theme-accent),var(--theme-accent-2)) !important; }
.wellness-suite .well-habit-day.done { background:var(--theme-accent) !important; border-color:var(--theme-accent) !important; color:var(--theme-on-accent) !important; }
.settings-switch input:checked+span { background:var(--theme-accent) !important; }
.settings-theme-card.active { border-color:var(--theme-accent) !important; box-shadow:0 0 0 3px var(--theme-accent-soft),var(--shadow-hover) !important; }
.settings-theme-check { background:var(--theme-accent) !important; color:var(--theme-on-accent) !important; }

/* ==================== V12 PATCH — USER REQUESTED REFINEMENTS ==================== */
:root{
  --font-ui:'Plus Jakarta Sans',sans-serif;
  --font-display:'Space Grotesk',sans-serif;
}
*{font-family:var(--font-ui)}
.page-title,
.portal-display-title,
.portal-panel-head h3,
.portal-final-copy h3,
.digital-time-big,
.pomo-time-center,
.cb-section-number,
.acct-section-number,
.acct-kpi-card strong,
.wellness-suite .well-metric-value,
.settings-profile-card h3,
.auth-head h1,
.nexus-auth-topmark strong,
.onboarding-top h2,
.onboarding-step h3,
.nexus-account-copy strong,
.blueprint-card-body h3,
.portal-project-linked-card strong,
.portal-progress-number strong,
.portal-video-empty h4,
.portal-phase-title h4,
.portal-delivery-cover-copy h4,
.settings-section-head h3,
.settings-card-head h4,
.notification-popover-head h3,
.sidebar-brand-block h2,
.brand-info h2{font-family:var(--font-display)!important}
.editor-textarea{font-family:var(--font-display),monospace}

[data-theme="bloom"] {
  --bg-app: #f6edf0;
  --sidebar-metal: linear-gradient(180deg, #e7d7dc 0%, #d1b3bd 46%, #ebdde2 100%);
  --card-surface: rgba(255,255,255,0.94);
  --card-border: rgba(152, 92, 111, 0.18);
  --text-primary: #2d2b38;
  --text-muted: #6f6576;
  --text-light: #9f95a8;
  --theme-accent: #98506c;
  --theme-accent-2: #d59ab0;
  --theme-accent-soft: rgba(152,80,108,0.11);
  --theme-accent-line: rgba(152,80,108,0.28);
  --theme-on-accent: #ffffff;
  --accent-cyan: var(--theme-accent);
  --accent-blue: var(--theme-accent-2);
  --accent-purple: #c78aa0;
  --burgundy-btn: var(--theme-accent);
  --brand-purple: var(--theme-accent);
}

.brand-nexus-logo{position:relative;overflow:hidden;background:linear-gradient(145deg,var(--theme-accent),var(--theme-accent-2));color:var(--theme-on-accent);box-shadow:0 14px 35px color-mix(in srgb,var(--theme-accent) 30%,transparent)}
.brand-nexus-mark{position:relative;z-index:2;font:800 .82rem var(--font-display);letter-spacing:.06em}
.brand-nexus-ring{position:absolute;inset:7px;border-radius:14px;border:1px solid rgba(255,255,255,.28);opacity:.9}
.brand-nexus-logo:before,.brand-nexus-logo:after{content:'';position:absolute;border-radius:50%;background:rgba(255,255,255,.16)}
.brand-nexus-logo:before{width:36px;height:36px;top:-14px;right:-10px}
.brand-nexus-logo:after{width:28px;height:28px;left:-10px;bottom:-8px}
.brand-nexus-mini{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(145deg,var(--theme-accent),var(--theme-accent-2));color:var(--theme-on-accent)!important;border:none!important;box-shadow:0 12px 24px color-mix(in srgb,var(--theme-accent) 26%,transparent)}
.brand-nexus-mini span{font:800 .72rem var(--font-display);letter-spacing:.08em}

.theme-switch-pills,.backup-actions-grid{display:none!important}
.sidebar-titanium-footer{gap:12px}
.system-time-display{margin-top:2px}

.search-trigger-pill{border:1px solid color-mix(in srgb,var(--theme-accent) 14%,var(--card-border));background:linear-gradient(135deg,color-mix(in srgb,var(--card-surface) 80%,var(--theme-accent-soft)),var(--card-surface));box-shadow:0 12px 30px rgba(15,23,42,.06)}
.search-trigger-pill span{font-size:.86rem;color:var(--text-primary);font-weight:700}
.keyboard-combo kbd{border-color:color-mix(in srgb,var(--theme-accent) 18%,var(--card-border));background:color-mix(in srgb,var(--theme-accent-soft) 70%,white);color:var(--text-primary)}

.action-pill-btn,.btn-editor-action,.btn-proj-pill,.btn-secondary{border-color:color-mix(in srgb,var(--theme-accent) 16%,var(--card-border))}
.action-pill-btn:hover,.btn-editor-action:hover,.btn-proj-pill:hover,.btn-secondary:hover{transform:translateY(-1px);border-color:var(--theme-accent-line);box-shadow:0 14px 32px rgba(15,23,42,.08)}
.proj-progress-track,.portal-progress-track,.portal-summary-progress,.well-progress-bar,.life-travel-progress,.life-kpi-progress{border-color:color-mix(in srgb,var(--theme-accent) 12%,transparent)}

.blueprints-bento-grid{grid-template-columns:repeat(3,1fr)}
.blueprint-photo-card{position:relative;min-height:160px;align-items:flex-end;padding:0;overflow:hidden;border:1px solid color-mix(in srgb,var(--theme-accent) 16%,var(--card-border))}
.blueprint-photo-card .blueprint-card-media{position:absolute;inset:0;background-image:linear-gradient(135deg,color-mix(in srgb,var(--theme-accent) 55%,transparent),rgba(10,14,22,.12)),var(--cover);background-size:cover;background-position:center;filter:saturate(1.02);transition:transform .45s ease,filter .35s ease}
.blueprint-photo-card .blueprint-card-body{position:relative;z-index:2;padding:16px 18px 18px;width:100%;min-height:100%;display:flex;flex-direction:column;justify-content:flex-end;background:linear-gradient(180deg,rgba(15,23,42,0) 0%,rgba(15,23,42,.10) 36%,rgba(15,23,42,.42) 100%)}
.blueprint-card-kicker{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.18);backdrop-filter:blur(10px);color:white;font-size:.67rem;font-weight:800;letter-spacing:.04em;margin-bottom:10px;width:max-content}
.blueprint-photo-card .blueprint-card-body h3,.blueprint-photo-card .blueprint-card-body p{color:#fff;text-shadow:0 2px 12px rgba(0,0,0,.18)}
.blueprint-photo-card .blueprint-card-body p{font-size:.76rem;max-width:26ch;color:rgba(255,255,255,.88)}
.blueprint-photo-card .blueprint-arrow{position:absolute;top:14px;right:14px;z-index:2;width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:rgba(255,255,255,.18);backdrop-filter:blur(10px);color:#fff;border:1px solid rgba(255,255,255,.28)}
.blueprint-photo-card:hover .blueprint-card-media{transform:scale(1.05);filter:saturate(1.08)}
.blueprint-photo-card:hover .blueprint-arrow{transform:translate(3px,-3px);background:rgba(255,255,255,.24)}

.settings-theme-grid-4{grid-template-columns:repeat(4,1fr)}
.settings-theme-preview.bloom{background:linear-gradient(145deg,#f5e6ec,#ba879a)}
.settings-preview-caption{margin-top:14px;font-size:.77rem;color:var(--text-muted);line-height:1.55}
.settings-style-pickers{align-items:start}
.settings-palette-grid,.settings-font-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:8px}
.settings-palette-card,.settings-font-card{padding:14px;border:1px solid var(--card-border);border-radius:18px;background:linear-gradient(135deg,var(--card-surface),color-mix(in srgb,var(--card-surface) 86%,var(--theme-accent-soft)));text-align:left;cursor:pointer;transition:var(--transition-smooth);color:var(--text-primary)}
.settings-palette-card:hover,.settings-font-card:hover,.settings-palette-card.active,.settings-font-card.active{transform:translateY(-2px);border-color:var(--theme-accent-line);box-shadow:0 16px 32px color-mix(in srgb,var(--theme-accent) 13%,transparent)}
.settings-palette-card strong,.settings-font-card strong{display:block;font-size:.84rem}
.settings-palette-card small,.settings-font-card small{display:block;margin-top:4px;font-size:.74rem;color:var(--text-muted);line-height:1.45}
.settings-palette-swatches{display:flex;gap:6px;margin-bottom:10px}
.settings-palette-swatches i{display:block;width:22px;height:22px;border-radius:999px;border:1px solid rgba(0,0,0,.05)}
.settings-palette-card[data-palette="auto"] .settings-palette-swatches i:nth-child(1){background:#2f7dd6}.settings-palette-card[data-palette="auto"] .settings-palette-swatches i:nth-child(2){background:#18a5d8}.settings-palette-card[data-palette="auto"] .settings-palette-swatches i:nth-child(3){background:#dce9fa}
.settings-palette-card[data-palette="nexus"] .settings-palette-swatches i:nth-child(1){background:#205ec4}.settings-palette-card[data-palette="nexus"] .settings-palette-swatches i:nth-child(2){background:#1bb4e0}.settings-palette-card[data-palette="nexus"] .settings-palette-swatches i:nth-child(3){background:#d9edff}
.settings-palette-card[data-palette="plum"] .settings-palette-swatches i:nth-child(1){background:#7b4a86}.settings-palette-card[data-palette="plum"] .settings-palette-swatches i:nth-child(2){background:#c281cd}.settings-palette-card[data-palette="plum"] .settings-palette-swatches i:nth-child(3){background:#f1e6f5}
.settings-palette-card[data-palette="champagne"] .settings-palette-swatches i:nth-child(1){background:#b5893d}.settings-palette-card[data-palette="champagne"] .settings-palette-swatches i:nth-child(2){background:#d8b56d}.settings-palette-card[data-palette="champagne"] .settings-palette-swatches i:nth-child(3){background:#f7efdf}
.settings-palette-card[data-palette="sage"] .settings-palette-swatches i:nth-child(1){background:#5b8b7d}.settings-palette-card[data-palette="sage"] .settings-palette-swatches i:nth-child(2){background:#7cc7b1}.settings-palette-card[data-palette="sage"] .settings-palette-swatches i:nth-child(3){background:#e3f5ef}
.settings-palette-card[data-palette="rose"] .settings-palette-swatches i:nth-child(1){background:#98506c}.settings-palette-card[data-palette="rose"] .settings-palette-swatches i:nth-child(2){background:#d59ab0}.settings-palette-card[data-palette="rose"] .settings-palette-swatches i:nth-child(3){background:#f8e6ed}
[data-theme="obsidian"] .settings-palette-card,[data-theme="obsidian"] .settings-font-card{background:linear-gradient(135deg,rgba(17,24,39,.98),rgba(27,36,54,.96));border-color:rgba(255,255,255,.12)}

.portal-progress-panel{border:1px solid color-mix(in srgb,var(--theme-accent) 14%,var(--card-border))}
#client-portal-suite[data-portal-mode="client"] .portal-project-meta-table{display:none}
#client-portal-suite[data-portal-mode="client"] .portal-progress-panel{grid-template-columns:1fr}
#client-portal-suite[data-portal-mode="client"] .portal-progress-hero{border-right:none;padding:30px}

.portal-messages-list{gap:14px;padding:4px 2px 8px}
.portal-message{position:relative;padding:0;border:0;display:grid;grid-template-columns:auto 1fr;gap:10px;align-items:flex-end}
.portal-message:before{content:attr(data-author-initials);display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:14px;background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2));color:var(--theme-on-accent);font:800 .78rem var(--font-display);box-shadow:var(--shadow-soft)}
.portal-message.client:before{background:linear-gradient(135deg,#19c37d,#5fd6a2)}
.portal-message .portal-message-bubble{padding:14px 16px;border-radius:20px 20px 20px 8px;background:linear-gradient(145deg,color-mix(in srgb,var(--card-surface) 92%,var(--theme-accent-soft)),var(--card-surface));border:1px solid color-mix(in srgb,var(--theme-accent) 12%,var(--card-border));box-shadow:0 12px 28px rgba(15,23,42,.05)}
.portal-message.client .portal-message-bubble{background:linear-gradient(145deg,color-mix(in srgb,#19c37d 14%,white),white);border-color:rgba(25,195,125,.18)}
.portal-message-head{margin-bottom:5px}.portal-message-head strong{display:flex;align-items:center;gap:8px}.portal-message p{margin-top:8px}
.portal-message.client{padding-left:0;border-left:0}
.portal-message.linked p::before{content:''}
.portal-reply-box{gap:12px}
.portal-message-compose{padding:10px;border:1px solid color-mix(in srgb,var(--theme-accent) 12%,var(--card-border));border-radius:22px;background:linear-gradient(145deg,var(--card-surface),color-mix(in srgb,var(--card-surface) 84%,var(--theme-accent-soft)))}
.portal-message-compose textarea{border:none!important;background:transparent!important;box-shadow:none!important;min-height:110px}
.portal-message-compose textarea:focus{outline:none}

.portal-task-status-wrap{display:flex;align-items:center;gap:8px}
.portal-task-status-bullet{width:10px;height:10px;border-radius:50%;flex:0 0 auto}
.portal-task-status-select.status-done{border-color:#62a167;background:rgba(98,161,103,.08)}
.portal-task-status-select.status-progress{border-color:#5a8eb4;background:rgba(90,142,180,.08)}
.portal-task-status-select.status-complete{border-color:#d99a20;background:rgba(217,154,32,.08)}
.portal-task-status-select.status-waiting{border-color:#e98231;background:rgba(233,130,49,.08)}
.portal-task-status-select.status-validate{border-color:#9865a7;background:rgba(152,101,167,.08)}
.portal-task-status-select.status-todo{border-color:#a0a0a0;background:rgba(160,160,160,.08)}

.portal-client-session-user{display:flex;align-items:center;gap:14px}
.portal-client-session-avatar{width:42px;height:42px;border-radius:16px;background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2));color:var(--theme-on-accent);display:flex;align-items:center;justify-content:center;font:800 .8rem var(--font-display);overflow:hidden;box-shadow:var(--shadow-soft)}
.portal-client-session-avatar.has-image,.nexus-account-avatar.has-image,.settings-account-avatar.has-image{background-size:cover;background-position:center;color:transparent;text-indent:-9999px}
.nexus-account-avatar.has-image,.settings-account-avatar.has-image{background-size:cover;background-position:center}
.nexus-account-avatar,.settings-account-avatar{overflow:hidden}

.gallery-edit-btn{opacity:1;transform:none}
.notification-anchor .notification-popover{border-color:color-mix(in srgb,var(--theme-accent) 14%,var(--card-border))}
.notification-list .notification-item{border-color:color-mix(in srgb,var(--theme-accent) 10%,var(--card-border))}

@media(max-width:1100px){.settings-theme-grid-4,.blueprints-bento-grid{grid-template-columns:repeat(2,1fr)}.settings-palette-grid,.settings-font-grid{grid-template-columns:1fr}}
@media(max-width:760px){.blueprints-bento-grid,.settings-theme-grid-4{grid-template-columns:1fr}.blueprint-photo-card{min-height:150px}.portal-message{grid-template-columns:1fr}.portal-message:before{display:none}.portal-message .portal-message-bubble{border-radius:18px}.portal-client-session-user{flex-wrap:wrap;justify-content:flex-end}.portal-client-session-avatar{width:38px;height:38px}}
[data-theme="obsidian"] input,
[data-theme="obsidian"] select,
[data-theme="obsidian"] textarea,
[data-theme="obsidian"] .modern-input,
[data-theme="obsidian"] .editor-textarea,
[data-theme="obsidian"] .editor-toolbar-chip,
[data-theme="obsidian"] .portal-reply-box textarea{
  color:#edf4ff!important;
  background:rgba(12,18,29,.92)!important;
  border-color:rgba(140,166,211,.28)!important;
}
[data-theme="obsidian"] input::placeholder,
[data-theme="obsidian"] textarea::placeholder{color:rgba(227,235,249,.55)!important}
[data-theme="obsidian"] .section-heading-tag,
[data-theme="obsidian"] .settings-section-head p,
[data-theme="obsidian"] .field-label,
[data-theme="obsidian"] .editor-shell-modern label,
[data-theme="obsidian"] .portal-message-meta,
[data-theme="obsidian"] .topbar-subtext,
[data-theme="obsidian"] .editor-status-bar,
[data-theme="obsidian"] .editor-status-bar *{color:rgba(229,236,247,.78)!important}

/* ==================== V12.1 — PREMIUM FLOATING MESSENGER ==================== */
/* Les couvertures fournies contiennent déjà leur titre : on évite tout doublon visuel. */
.blueprint-photo-card{min-height:178px;background:var(--card-surface)}
.blueprint-photo-card .blueprint-card-media{
  background-image:linear-gradient(135deg,color-mix(in srgb,var(--theme-accent) 13%,transparent),rgba(13,18,28,.035)),var(--cover)!important;
  background-position:center!important;background-size:cover!important;filter:saturate(1.02) contrast(1.01)!important;
}
.blueprint-photo-card .blueprint-card-body{background:linear-gradient(180deg,transparent 48%,rgba(17,24,39,.02) 70%,rgba(17,24,39,.18) 100%)!important;padding:0!important;display:block!important;pointer-events:none}
.blueprint-photo-card .blueprint-card-body h3{display:none!important}
.blueprint-photo-card .blueprint-card-body p{position:absolute;left:14px;right:58px;bottom:13px;margin:0;opacity:0;transform:translateY(7px);transition:var(--transition-smooth);font-size:.72rem!important;line-height:1.35;color:#fff!important;text-shadow:0 2px 10px rgba(0,0,0,.28);max-width:none!important}
.blueprint-photo-card:hover .blueprint-card-body p{opacity:1;transform:translateY(0)}
.blueprint-photo-card .blueprint-card-kicker{position:absolute;left:14px;top:14px;margin:0;background:rgba(255,255,255,.82)!important;color:#283244!important;border:1px solid rgba(255,255,255,.68);box-shadow:0 8px 22px rgba(15,23,42,.09);backdrop-filter:blur(14px)}
[data-theme="obsidian"] .blueprint-photo-card .blueprint-card-kicker{background:rgba(15,23,42,.78)!important;color:#fff!important;border-color:rgba(255,255,255,.18)}
.blueprint-photo-card .blueprint-arrow{background:rgba(255,255,255,.72)!important;color:var(--theme-accent)!important;border-color:rgba(255,255,255,.72)!important;box-shadow:0 10px 26px rgba(15,23,42,.10)}
[data-theme="obsidian"] .blueprint-photo-card .blueprint-arrow{background:rgba(15,23,42,.72)!important;color:#fff!important;border-color:rgba(255,255,255,.16)!important}
.blueprint-photo-card:hover .blueprint-card-media{transform:scale(1.025)!important;filter:saturate(1.06) contrast(1.02)!important}

.portal-chat-widget{position:fixed;right:26px;bottom:22px;z-index:160;width:min(360px,calc(100vw - 28px));pointer-events:none}
.portal-chat-widget.chat-open{width:min(360px,calc(100vw - 28px))}
.portal-chat-launcher{pointer-events:auto;position:relative;margin-left:auto;display:flex;align-items:center;gap:10px;min-height:56px;padding:8px 12px 8px 8px;border:1px solid color-mix(in srgb,var(--theme-accent) 20%,var(--card-border));border-radius:18px;background:linear-gradient(160deg,color-mix(in srgb,var(--card-surface) 95%,var(--theme-accent-soft)),color-mix(in srgb,var(--card-surface) 88%,white));color:var(--text-primary);box-shadow:0 18px 45px rgba(15,23,42,.14);cursor:pointer;transition:opacity .18s ease,transform .22s ease,box-shadow .22s ease,border-color .22s ease;backdrop-filter:blur(20px)}
.portal-chat-launcher:hover{transform:translateY(-2px);box-shadow:0 24px 58px color-mix(in srgb,var(--theme-accent) 12%,rgba(15,23,42,.16));border-color:var(--theme-accent-line)}
.portal-chat-widget.chat-open .portal-chat-launcher{opacity:0;transform:translateY(12px) scale(.96);pointer-events:none}
.portal-chat-launcher-icon{width:40px;height:40px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2));color:var(--theme-on-accent);box-shadow:0 10px 24px color-mix(in srgb,var(--theme-accent) 26%,transparent)}
.portal-chat-launcher-copy{display:flex;flex-direction:column;align-items:flex-start;min-width:0}
.portal-chat-launcher-copy strong{font:800 .78rem var(--font-display);letter-spacing:-.01em}.portal-chat-launcher-copy small{font-size:.66rem;color:var(--text-muted);margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:200px}
.portal-chat-badge{position:absolute;right:-4px;top:-6px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:grid;place-items:center;background:#ef4444;color:#fff;font:800 .64rem var(--font-display);border:3px solid var(--card-surface);box-shadow:0 8px 18px rgba(239,68,68,.25)}
.portal-chat-badge[hidden]{display:none!important}
.portal-chat-launcher.has-unread{animation:portalChatPulse 2.1s ease-in-out infinite}
@keyframes portalChatPulse{0%,100%{transform:translateY(0)}50%{transform:translateY(-2px)}}

.portal-chat-toast{pointer-events:auto;position:absolute;right:0;bottom:74px;width:min(320px,calc(100vw - 28px));display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:11px 12px;border:1px solid color-mix(in srgb,var(--theme-accent) 18%,var(--card-border));border-radius:16px;background:color-mix(in srgb,var(--card-surface) 95%,var(--theme-accent-soft));color:var(--text-primary);box-shadow:0 18px 46px rgba(15,23,42,.14);cursor:pointer;backdrop-filter:blur(20px);animation:portalToastIn .28s ease}
.portal-chat-toast[hidden]{display:none!important}.portal-chat-toast-icon{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:var(--theme-accent-soft);color:var(--theme-accent)}
.portal-chat-toast span:nth-child(2){display:flex;flex-direction:column;min-width:0}.portal-chat-toast strong{font-size:.74rem}.portal-chat-toast small{font-size:.64rem;color:var(--text-muted);margin-top:3px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
@keyframes portalToastIn{from{opacity:0;transform:translateY(10px) scale(.98)}to{opacity:1;transform:none}}

.portal-chat-window{pointer-events:none;position:absolute;right:0;bottom:0;width:360px;max-width:calc(100vw - 28px);height:min(560px,calc(100vh - 136px));display:flex;flex-direction:column;border:1px solid rgba(255,255,255,.09);border-radius:26px;background:radial-gradient(circle at top right,rgba(96,165,250,.16),transparent 30%),linear-gradient(180deg,rgba(9,15,27,.98),rgba(10,16,28,.96));box-shadow:0 36px 95px rgba(2,8,23,.34);backdrop-filter:blur(26px);overflow:hidden;opacity:0;transform:translateY(16px) scale(.97);visibility:hidden;transition:opacity .22s ease,transform .24s cubic-bezier(.16,1,.3,1),visibility .22s}
.portal-chat-window::before{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(255,255,255,.06),transparent 22%,transparent 78%,rgba(255,255,255,.03));pointer-events:none}
.portal-chat-window.active{pointer-events:auto;opacity:1;transform:none;visibility:visible}
.portal-chat-header{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 14px 12px;background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.015));border-bottom:1px solid rgba(255,255,255,.08)}
.portal-chat-contact{display:flex;align-items:center;gap:10px;min-width:0}.portal-chat-avatar{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;flex:0 0 auto;background:linear-gradient(135deg,#4da2ff,#7c5cff);color:#fff;font:800 .78rem var(--font-display);box-shadow:0 10px 24px rgba(60,130,246,.32);background-size:cover;background-position:center}
.portal-chat-contact>div{min-width:0}.portal-chat-contact strong{display:block;font:800 .92rem var(--font-display);color:#f8fbff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-chat-contact>div>span{display:flex;align-items:center;gap:6px;margin-top:3px;color:rgba(226,232,240,.72);font-size:.65rem}.portal-chat-contact b{font-weight:700}.portal-chat-live-dot{width:7px;height:7px;border-radius:50%;background:#34d399;box-shadow:0 0 0 4px rgba(52,211,153,.12)}
.portal-chat-header-actions{display:flex;align-items:center;gap:6px}.portal-chat-icon-btn{width:36px;height:36px;border-radius:12px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.05);color:#e8eefb;display:grid;place-items:center;cursor:pointer;transition:var(--transition-smooth)}.portal-chat-icon-btn:hover{background:rgba(255,255,255,.1);color:#fff;transform:translateY(-1px)}
.portal-chat-project-strip{position:relative;z-index:1;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px 14px;border-bottom:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.03)}.portal-chat-project-strip span{font-size:.56rem;font-weight:900;letter-spacing:.12em;color:#7db5ff;text-transform:uppercase}.portal-chat-project-strip strong{font-size:.72rem;color:#f8fbff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-chat-project-strip small{font-size:.6rem;color:rgba(226,232,240,.62)}
.portal-chat-secure-chip{display:inline-flex;align-items:center;gap:5px;padding:7px 10px;border-radius:999px;background:rgba(16,185,129,.14);border:1px solid rgba(52,211,153,.20);color:#b6f6d9;font-size:.62rem;font-weight:800}

.portal-chat-messages{position:relative;z-index:1;flex:1;max-height:none!important;overflow:auto!important;padding:14px 14px 10px!important;display:flex!important;flex-direction:column!important;gap:10px!important;scroll-behavior:smooth;background:linear-gradient(180deg,rgba(255,255,255,.02),transparent 16%,transparent)}
.portal-chat-messages::-webkit-scrollbar{width:6px}.portal-chat-messages::-webkit-scrollbar-thumb{background:rgba(148,163,184,.26);border-radius:999px}
.portal-chat-day{align-self:center;padding:6px 10px;border-radius:999px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);color:rgba(226,232,240,.72);font-size:.6rem;font-weight:800;letter-spacing:.03em;text-transform:uppercase}
.portal-chat-messages .portal-message{display:flex!important;align-items:flex-end!important;gap:8px!important;padding:0!important;border:0!important;background:none!important;max-width:86%}
.portal-chat-messages .portal-message.is-mine{align-self:flex-end!important;flex-direction:row-reverse}.portal-chat-messages .portal-message.is-theirs{align-self:flex-start!important}
.portal-chat-message-avatar{width:26px;height:26px;border-radius:9px;display:grid;place-items:center;flex:0 0 auto;background:linear-gradient(135deg,#4da2ff,#7c5cff);color:#fff;font:800 .55rem var(--font-display);box-shadow:0 10px 22px rgba(60,130,246,.18)}.portal-message.client .portal-chat-message-avatar{background:linear-gradient(135deg,#19c37d,#53d6a4);color:#fff}
.portal-chat-messages .portal-message-bubble{min-width:0;max-width:252px!important;padding:11px 12px!important;border-radius:18px 18px 18px 8px!important;background:rgba(255,255,255,.065)!important;border:1px solid rgba(255,255,255,.08)!important;box-shadow:0 10px 26px rgba(2,8,23,.18)!important;backdrop-filter:blur(14px)}
.portal-chat-messages .portal-message.is-mine .portal-message-bubble{border-radius:18px 18px 8px 18px!important;background:linear-gradient(135deg,#42a5ff,#6a5cff)!important;color:#f8fbff!important;border-color:rgba(255,255,255,.06)!important;box-shadow:0 16px 30px rgba(55,111,255,.28)!important}
.portal-message-column{display:flex;flex-direction:column;gap:5px;min-width:0}
.portal-chat-messages .portal-message-head{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:10px!important;margin:0 0 4px!important}.portal-chat-messages .portal-message-head strong{font-size:.64rem!important;color:rgba(248,250,252,.9)!important}.portal-chat-messages .portal-message-head time{font-size:.56rem!important;color:rgba(226,232,240,.56)!important;white-space:nowrap}.portal-chat-messages .portal-message.is-mine .portal-message-head time,.portal-chat-messages .portal-message.is-mine .portal-message-meta,.portal-chat-messages .portal-message.is-mine .portal-message-status,.portal-chat-messages .portal-message.is-mine .portal-message-receipt{color:rgba(248,250,252,.72)!important}
.portal-chat-messages .portal-message-meta{font-size:.58rem!important;color:rgba(226,232,240,.60)!important;margin:0 0 3px!important}.portal-chat-messages .portal-message p{font-size:.76rem!important;line-height:1.48!important;margin:3px 0 0!important;color:inherit!important;word-break:break-word}.portal-chat-messages .portal-message-attachment{font-size:.62rem!important;margin-top:7px!important;padding:7px 8px!important;background:rgba(255,255,255,.08)!important;border-color:rgba(255,255,255,.1)!important;color:inherit!important}.portal-chat-messages .portal-message-cloud-badge{font-size:.56rem!important;margin-left:3px!important;color:#9be7c8!important}
.portal-chat-messages .empty-state{margin:auto;text-align:center;color:rgba(226,232,240,.68);font-size:.74rem;padding:28px}
.portal-message-linked{display:inline-flex;align-items:center;gap:6px;max-width:100%;padding:6px 9px;margin-bottom:8px;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);font-size:.62rem;color:inherit;text-decoration:none}.portal-message-linked span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.portal-message.is-mine .portal-message-linked{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.18)}
.portal-message-status{display:inline-flex;align-items:center;gap:5px;margin-top:8px;font-size:.58rem;color:rgba(226,232,240,.62)}.portal-message-status.failed{color:#fecaca}.portal-message-status button{background:none;border:0;padding:0;color:inherit;font:inherit;font-weight:800;cursor:pointer}
.portal-message-extras{display:flex;align-items:center;justify-content:space-between;gap:8px;min-width:0}.portal-message-reactions{display:flex;flex-wrap:wrap;gap:6px}.portal-reaction-chip{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:#e8eefb;font-size:.58rem;cursor:pointer}.portal-reaction-chip b{font-size:.56rem}.portal-message-actions{display:flex;align-items:center;gap:4px;opacity:.08;transform:translateY(2px);transition:var(--transition-smooth)}.portal-message:hover .portal-message-actions{opacity:1;transform:none}.portal-message-actions button{width:22px;height:22px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:#e8eefb;display:grid;place-items:center;cursor:pointer;font-size:.58rem}
.portal-message-focus .portal-message-bubble{outline:1px solid rgba(96,165,250,.55)!important;box-shadow:0 0 0 5px rgba(59,130,246,.14),0 16px 34px rgba(2,8,23,.22)!important}
.portal-message.is-new-message .portal-message-bubble{animation:portalBubblePop .35s ease}
@keyframes portalBubblePop{0%{transform:scale(.97);opacity:.65}100%{transform:none;opacity:1}}

.portal-chat-typing{display:flex;align-items:center;gap:4px;padding:0 14px 8px;color:rgba(226,232,240,.72);font-size:.6rem}.portal-chat-typing span{width:5px;height:5px;border-radius:50%;background:rgba(226,232,240,.62);animation:typingBounce 1.1s infinite}.portal-chat-typing span:nth-child(2){animation-delay:.12s}.portal-chat-typing span:nth-child(3){animation-delay:.24s}.portal-chat-typing b{font-weight:650;margin-left:4px}@keyframes typingBounce{0%,60%,100%{transform:translateY(0);opacity:.55}30%{transform:translateY(-3px);opacity:1}}
.portal-chat-context{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 14px 8px;padding:8px 10px;border-radius:14px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);color:#e8eefb;font-size:.62rem}.portal-chat-context span{display:flex;align-items:center;gap:7px;min-width:0}.portal-chat-context b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-chat-context button{width:26px;height:26px;border-radius:9px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:#fff;display:grid;place-items:center;cursor:pointer}
.portal-chat-quick-reactions{display:flex;align-items:center;gap:8px;padding:0 14px 10px}.portal-chat-quick-reactions button{width:28px;height:28px;border-radius:999px;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.04);color:#fff;display:grid;place-items:center;cursor:pointer;font-size:.8rem;transition:var(--transition-smooth)}.portal-chat-quick-reactions button:hover{transform:translateY(-1px);background:rgba(255,255,255,.08)}

.portal-chat-compose{position:relative;z-index:1;display:grid;grid-template-columns:auto 1fr auto;align-items:end;gap:8px;padding:12px 14px 14px;border-top:1px solid rgba(255,255,255,.07);background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.02))}.portal-chat-compose-main{min-width:0;border:1px solid rgba(255,255,255,.09);border-radius:18px;background:rgba(255,255,255,.05);padding:10px 12px 9px;box-shadow:inset 0 1px 0 rgba(255,255,255,.04)}.portal-chat-compose textarea{display:block;width:100%;min-height:22px;max-height:88px;resize:none;border:0!important;outline:0!important;background:transparent!important;color:#f8fbff!important;font:600 .74rem/1.42 var(--font-ui);padding:0!important;-webkit-text-fill-color:#f8fbff!important}.portal-chat-compose textarea::placeholder{color:rgba(226,232,240,.46)!important}.portal-chat-attachment-preview{font-size:.57rem;color:#8fc7ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;min-height:0;margin-top:4px}.portal-chat-attachment-preview:empty{display:none}
.portal-chat-compose-btn,.portal-chat-send-btn{width:40px;height:40px;border-radius:14px;display:grid;place-items:center;cursor:pointer;transition:var(--transition-smooth)}.portal-chat-compose-btn{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.05);color:#d2d8e3}.portal-chat-compose-btn:hover{color:#fff;background:rgba(255,255,255,.09)}.portal-chat-send-btn{border:0;background:linear-gradient(135deg,#4da2ff,#7c5cff);color:#fff;box-shadow:0 10px 24px rgba(76,111,255,.28)}.portal-chat-send-btn:hover{transform:translateY(-2px) scale(1.02)}

.portal-chat-inbox{position:absolute;inset:98px 8px 8px;z-index:4;background:rgba(8,12,22,.94);border:1px solid rgba(255,255,255,.08);border-radius:18px;backdrop-filter:blur(24px);padding:12px;overflow:auto;box-shadow:0 18px 46px rgba(2,8,23,.24)}.portal-chat-inbox[hidden]{display:none!important}.portal-chat-inbox-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.portal-chat-inbox-head strong{font:800 .8rem var(--font-display);color:#f8fbff}.portal-chat-inbox-head span{min-width:24px;height:24px;border-radius:999px;display:grid;place-items:center;background:rgba(255,255,255,.08);color:#8fc7ff;font-size:.64rem;font-weight:800}.portal-chat-inbox-list{display:flex;flex-direction:column;gap:8px}.portal-chat-inbox-item{width:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px;padding:10px;border:1px solid rgba(255,255,255,.08);border-radius:15px;background:rgba(255,255,255,.03);color:#f8fbff;text-align:left;cursor:pointer;transition:var(--transition-smooth)}.portal-chat-inbox-item:hover,.portal-chat-inbox-item.active{border-color:rgba(125,181,255,.35);background:rgba(255,255,255,.06);transform:translateY(-1px)}.portal-chat-inbox-item-avatar{width:34px;height:34px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#4da2ff,#7c5cff);color:#fff;font:800 .66rem var(--font-display)}.portal-chat-inbox-item-copy{min-width:0}.portal-chat-inbox-item-copy strong,.portal-chat-inbox-item-copy span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-chat-inbox-item-copy strong{font-size:.68rem}.portal-chat-inbox-item-copy span{font-size:.6rem;color:rgba(226,232,240,.62);margin-top:3px}.portal-chat-inbox-item small{font-size:.56rem;color:rgba(226,232,240,.5)}

.client-portal-suite.portal-access-hide-messages #portal-messaging-section{display:none!important}
#client-portal-suite.portal-pref-no-comments #portal-messaging-section{display:none!important}

[data-theme="obsidian"] .portal-chat-window,[data-theme="obsidian"] .portal-chat-launcher,[data-theme="obsidian"] .portal-chat-toast{background:radial-gradient(circle at top right,rgba(96,165,250,.16),transparent 30%),linear-gradient(180deg,rgba(9,15,27,.98),rgba(10,16,28,.96));border-color:rgba(255,255,255,.10)}
[data-theme="obsidian"] .portal-chat-compose,[data-theme="obsidian"] .portal-chat-compose-main,[data-theme="obsidian"] .portal-chat-inbox{background:rgba(10,16,26,.96)}
[data-theme="obsidian"] .portal-chat-messages .portal-message.is-theirs .portal-message-bubble{background:rgba(255,255,255,.05)!important;color:#eef4ff!important;border-color:rgba(255,255,255,.08)!important}

@media(max-width:760px){
  .portal-chat-widget{right:10px;bottom:10px;width:calc(100vw - 20px)}
  .portal-chat-window{position:fixed;left:10px;right:10px;bottom:10px;top:10px;width:auto;max-width:none;height:auto;max-height:none;border-radius:22px}
  .portal-chat-widget.chat-open{width:auto}
  .portal-chat-launcher-copy small{display:none}.portal-chat-launcher{min-height:52px;border-radius:17px}.portal-chat-project-strip{grid-template-columns:auto 1fr auto;padding:9px 12px}.portal-chat-project-strip small{display:none}
  .portal-chat-header{padding:12px}.portal-chat-messages{padding:12px 12px 8px!important}.portal-chat-messages .portal-message{max-width:92%}.portal-chat-messages .portal-message-bubble{max-width:min(76vw,280px)!important}.portal-message-actions{opacity:1;transform:none;flex-wrap:wrap}
  .portal-chat-compose{padding:10px 12px 12px}.portal-chat-quick-reactions{padding:0 12px 9px}.portal-chat-context{margin:0 12px 8px}
}

/* ========================================================================== 
   V12.2 — Galerie discrète + Monogramme D&A professionnel
   ========================================================================== */
.gallery-item-shell{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:8px;
}
.gallery-item-shell .gallery-tile{
  width:100%;
  height:105px;
  margin:0;
  overflow:hidden;
}
.gallery-item-shell .gallery-edit-btn{
  position:static!important;
  top:auto!important;
  right:auto!important;
  opacity:1!important;
  transform:none!important;
  width:max-content;
  max-width:100%;
  align-self:flex-end;
  min-height:30px;
  padding:6px 10px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  border-radius:999px;
  border:1px solid color-mix(in srgb,var(--theme-accent) 15%,var(--card-border));
  background:color-mix(in srgb,var(--card-surface) 94%,var(--theme-accent-soft));
  color:var(--text-muted);
  box-shadow:none;
  backdrop-filter:blur(12px);
  font-size:.67rem;
  line-height:1;
  font-weight:800;
  letter-spacing:.01em;
  transition:var(--transition-smooth);
}
.gallery-item-shell .gallery-edit-btn svg{
  color:var(--theme-accent);
  flex:0 0 auto;
}
.gallery-item-shell .gallery-edit-btn:hover,
.gallery-item-shell .gallery-edit-btn:focus-visible{
  background:var(--theme-accent-soft);
  border-color:var(--theme-accent-line);
  color:var(--text-primary);
  transform:translateY(-1px)!important;
  box-shadow:0 8px 20px color-mix(in srgb,var(--theme-accent) 10%,transparent);
}
.gallery-item-shell .gallery-tile:hover img{transform:scale(1.035)}
.gallery-item-shell .gallery-tile-tag{z-index:2}
[data-theme="obsidian"] .gallery-item-shell .gallery-edit-btn{
  background:rgba(17,24,39,.92);
  border-color:rgba(255,255,255,.12);
  color:#c9d4e5;
}
@media(max-width:900px){
  .gallery-item-shell .gallery-edit-btn span{display:none}
  .gallery-item-shell .gallery-edit-btn{width:30px;height:30px;padding:0;border-radius:10px}
}

/* D&A monogram — vectoriel, net et piloté par le thème. */
.brand-da-logo,
.brand-da-logo-mini,
.nexus-auth-da-logo{
  position:relative;
  overflow:hidden;
  background:linear-gradient(145deg,
    color-mix(in srgb,var(--card-surface) 96%,white),
    color-mix(in srgb,var(--card-surface) 88%,var(--theme-accent-soft)))!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 20%,var(--card-border))!important;
  color:var(--theme-accent)!important;
  box-shadow:0 10px 26px rgba(15,23,42,.08),inset 0 1px rgba(255,255,255,.75)!important;
}
.brand-da-logo{width:42px;height:42px;border-radius:14px}
.brand-da-logo-mini{width:38px;height:38px;border-radius:13px}
.nexus-auth-da-logo{width:40px;height:40px;border-radius:14px}
.brand-da-logo:before,
.brand-da-logo-mini:before,
.nexus-auth-da-logo:before{
  content:'';
  position:absolute;
  inset:-45% 25% 35% -20%;
  border-radius:999px;
  background:radial-gradient(circle,color-mix(in srgb,var(--theme-accent-2) 26%,transparent),transparent 68%);
  pointer-events:none;
}
.da-monogram-svg{
  position:relative;
  z-index:2;
  width:31px;
  height:31px;
  overflow:visible;
}
.da-monogram-svg-mini{width:27px;height:27px}
.da-monogram-svg path{
  fill:none;
  stroke:currentColor;
  stroke-linecap:round;
  stroke-linejoin:round;
  vector-effect:non-scaling-stroke;
}
.da-monogram-svg .da-mono-d{stroke-width:3.8}
.da-monogram-svg .da-mono-a{stroke-width:3.8}
.da-monogram-svg .da-mono-amp{
  stroke-width:2.1;
  opacity:.72;
  transform:scale(.52);
  transform-origin:38px 35px;
}
[data-theme="obsidian"] .brand-da-logo,
[data-theme="obsidian"] .brand-da-logo-mini,
[data-theme="obsidian"] .nexus-auth-da-logo{
  background:linear-gradient(145deg,rgba(17,24,39,.98),rgba(27,36,54,.96))!important;
  border-color:rgba(140,166,211,.30)!important;
  color:#b7c9ec!important;
  box-shadow:0 12px 30px rgba(0,0,0,.24),inset 0 1px rgba(255,255,255,.05)!important;
}
[data-theme="gold"] .brand-da-logo,
[data-theme="gold"] .brand-da-logo-mini,
[data-theme="gold"] .nexus-auth-da-logo{color:#a37a32!important}
[data-theme="bloom"] .brand-da-logo,
[data-theme="bloom"] .brand-da-logo-mini,
[data-theme="bloom"] .nexus-auth-da-logo{color:#98506c!important}

/* ========================================================================== 
   V13 — CONTRASTE GLOBAL + MESSAGERIE PREMIUM TEMPS RÉEL + NOUVEAU LOGO D&A
   ========================================================================== */

/* Nouveau monogramme D&A fourni dans assets/brand. */
.brand-da-logo,
.brand-da-logo-mini,
.nexus-auth-da-logo{
  padding:0!important;
  background:transparent!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 18%,var(--card-border))!important;
  color:transparent!important;
  overflow:hidden!important;
  box-shadow:0 12px 28px rgba(15,23,42,.12)!important;
}
.brand-da-logo{width:44px!important;height:44px!important;border-radius:15px!important}
.brand-da-logo-mini{width:38px!important;height:38px!important;border-radius:13px!important}
.nexus-auth-da-logo{width:42px!important;height:42px!important;border-radius:14px!important}
.brand-da-logo img,.brand-da-logo-mini img,.nexus-auth-da-logo img{
  width:100%;height:100%;display:block;object-fit:cover;object-position:center;border-radius:inherit;
}
.brand-da-logo:before,.brand-da-logo-mini:before,.nexus-auth-da-logo:before{display:none!important}

/* Contraste global cohérent avec le thème actif. */
.btn-secondary,
.btn-editor-action,
.btn-proj-pill,
.action-pill-btn,
.portal-doc-action,
.portal-chat-icon-btn,
.btn-icon-ghost{
  background:color-mix(in srgb,var(--card-surface) 90%,var(--theme-accent-soft))!important;
  color:var(--text-primary)!important;
  border-color:color-mix(in srgb,var(--theme-accent) 18%,var(--card-border))!important;
}
.btn-secondary:hover,
.btn-editor-action:hover,
.btn-proj-pill:hover,
.action-pill-btn:hover,
.portal-doc-action:hover,
.portal-chat-icon-btn:hover,
.btn-icon-ghost:hover{
  background:var(--theme-accent-soft)!important;
  color:var(--theme-accent)!important;
  border-color:var(--theme-accent-line)!important;
}
.btn-secondary:disabled,
.btn-editor-action:disabled,
.btn-proj-pill:disabled,
.action-pill-btn:disabled{
  opacity:.58!important;
  color:var(--text-muted)!important;
  background:color-mix(in srgb,var(--card-surface) 94%,var(--text-muted) 6%)!important;
}
.btn-cta-gradient,.btn-glow-primary,.btn-primary-burgundy,.pomo-act-btn.primary,
.proj-progress-fill,.fluid-progress-bar,.portal-progress-track>div,.portal-summary-progress>div,
.acct-mini-progress span,.acct-breakdown-track i,.acct-goal-progress i{
  background:linear-gradient(90deg,var(--theme-accent),var(--theme-accent-2))!important;
  color:var(--theme-on-accent)!important;
}
.nav-item-btn.active{
  background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2))!important;
  color:var(--theme-on-accent)!important;
  border-color:transparent!important;
  box-shadow:0 12px 28px color-mix(in srgb,var(--theme-accent) 24%,transparent)!important;
}
.nav-item-btn.active svg,.nav-item-btn.active>span{color:inherit!important}
.nav-item-btn.active .nav-chip{
  background:color-mix(in srgb,var(--theme-on-accent) 92%,transparent)!important;
  color:var(--theme-accent)!important;
  border-color:transparent!important;
}
.nav-chip.green{background:color-mix(in srgb,#10b981 13%,var(--card-surface));color:#0d9467}

/* Obsidian : aucun texte blanc sur blanc / gris sur blanc. */
[data-theme="obsidian"] .btn-secondary,
[data-theme="obsidian"] .btn-editor-action,
[data-theme="obsidian"] .btn-proj-pill,
[data-theme="obsidian"] .action-pill-btn,
[data-theme="obsidian"] .portal-doc-action,
[data-theme="obsidian"] .portal-chat-icon-btn,
[data-theme="obsidian"] .btn-icon-ghost{
  background:#182235!important;
  color:#f4f7fb!important;
  border-color:rgba(158,177,211,.26)!important;
  -webkit-text-fill-color:#f4f7fb!important;
}
[data-theme="obsidian"] .btn-secondary:hover,
[data-theme="obsidian"] .btn-editor-action:hover,
[data-theme="obsidian"] .btn-proj-pill:hover,
[data-theme="obsidian"] .action-pill-btn:hover,
[data-theme="obsidian"] .portal-doc-action:hover,
[data-theme="obsidian"] .portal-chat-icon-btn:hover,
[data-theme="obsidian"] .btn-icon-ghost:hover{
  background:#22304a!important;color:#dce8ff!important;-webkit-text-fill-color:#dce8ff!important;
}
[data-theme="obsidian"] .crm-table td,
[data-theme="obsidian"] .crm-table th,
[data-theme="obsidian"] .portal-delivery-table td,
[data-theme="obsidian"] .portal-delivery-table th,
[data-theme="obsidian"] .portal-task-table td,
[data-theme="obsidian"] .portal-task-table th{
  color:#eaf0f8!important;
}
[data-theme="obsidian"] .text-muted,
[data-theme="obsidian"] .metric-foot,
[data-theme="obsidian"] .portal-message-meta,
[data-theme="obsidian"] .notification-copy span,
[data-theme="obsidian"] .settings-field>span,
[data-theme="obsidian"] label>span{
  color:#aebbd0!important;
}

/* Messagerie : vrai layout de chat, compact et premium. */
.portal-chat-window{
  width:430px!important;
  height:min(660px,calc(100vh - 118px))!important;
  border-radius:26px!important;
  background:color-mix(in srgb,var(--card-surface) 97%,var(--theme-accent-soft))!important;
  border-color:color-mix(in srgb,var(--theme-accent) 18%,var(--card-border))!important;
  box-shadow:0 36px 100px rgba(15,23,42,.24)!important;
}
.portal-chat-header{padding:14px 15px!important}
.portal-chat-contact{gap:10px!important}.portal-chat-contact>div>strong{font-size:.88rem!important}
.portal-chat-project-strip{padding:9px 15px!important}
.portal-chat-messages{padding:14px 12px 10px!important;gap:8px!important;background:linear-gradient(180deg,color-mix(in srgb,var(--theme-accent-soft) 42%,transparent),transparent 28%)!important}
.portal-chat-day{
  width:max-content;margin:8px auto 10px;padding:5px 9px;border-radius:999px;
  background:color-mix(in srgb,var(--card-surface) 86%,var(--theme-accent-soft));
  color:var(--text-muted);font-size:.62rem;font-weight:750;border:1px solid var(--card-border);
}
.portal-message{
  width:100%!important;display:flex!important;align-items:flex-end!important;gap:8px!important;
  padding:0!important;border:0!important;background:transparent!important;
}
.portal-message.is-mine{justify-content:flex-end!important}
.portal-message.is-theirs{justify-content:flex-start!important}
.portal-message.is-mine .portal-chat-message-avatar{order:2}
.portal-chat-message-avatar{
  width:30px!important;height:30px!important;min-width:30px!important;border-radius:11px!important;
  display:flex!important;align-items:center!important;justify-content:center!important;
  background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2))!important;
  color:var(--theme-on-accent)!important;font:800 .61rem var(--font-display)!important;
  background-size:cover!important;background-position:center!important;box-shadow:0 8px 18px rgba(15,23,42,.10)!important;
}
.portal-message.is-mine .portal-chat-message-avatar{opacity:.92}
.portal-message-bubble{
  width:auto!important;max-width:78%!important;padding:10px 12px!important;border-radius:18px 18px 18px 6px!important;
  background:var(--card-surface)!important;color:var(--text-primary)!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 10%,var(--card-border))!important;
  box-shadow:0 10px 24px rgba(15,23,42,.055)!important;
}
.portal-message.is-mine .portal-message-bubble{
  border-radius:18px 18px 6px 18px!important;
  background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2))!important;
  color:var(--theme-on-accent)!important;border-color:transparent!important;
  box-shadow:0 12px 26px color-mix(in srgb,var(--theme-accent) 20%,transparent)!important;
}
.portal-message-head{display:flex!important;justify-content:space-between!important;gap:12px!important;margin:0 0 5px!important;align-items:center!important}
.portal-message-head strong{font-size:.68rem!important;color:inherit!important;opacity:.92}
.portal-message-head time{font-size:.58rem!important;color:inherit!important;opacity:.62;white-space:nowrap}
.portal-message-meta{font-size:.61rem!important;color:var(--text-muted)!important;margin:0 0 5px!important;line-height:1.35!important}
.portal-message.is-mine .portal-message-meta{color:color-mix(in srgb,var(--theme-on-accent) 78%,transparent)!important}
.portal-message p{font-size:.79rem!important;line-height:1.48!important;margin:0!important;color:inherit!important;word-break:break-word}
.portal-message-receipt{display:inline-flex!important;align-items:center!important;gap:3px!important;font-size:.58rem!important;color:inherit!important;opacity:.72!important;margin-left:6px!important}
.portal-message-attachment{
  margin-top:8px!important;padding:7px 9px!important;border-radius:11px!important;
  border:1px solid color-mix(in srgb,currentColor 16%,transparent)!important;
  background:color-mix(in srgb,var(--card-surface) 72%,transparent)!important;color:inherit!important;
  font-size:.67rem!important;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;
}
.portal-message.is-mine .portal-message-attachment{background:rgba(255,255,255,.12)!important;border-color:rgba(255,255,255,.22)!important;color:var(--theme-on-accent)!important}
.portal-message-linked{
  display:flex;align-items:center;gap:5px;margin:0 0 6px;padding:5px 7px;border-radius:9px;
  background:color-mix(in srgb,var(--theme-accent-soft) 70%,transparent);font-size:.6rem;font-weight:750;color:var(--theme-accent);
}
.portal-message.is-mine .portal-message-linked{background:rgba(255,255,255,.13);color:var(--theme-on-accent)}
.portal-message-status{display:flex;justify-content:flex-end;margin-top:5px;font-size:.57rem;color:var(--text-light);gap:4px;align-items:center}
.portal-message.is-mine .portal-message-status{color:color-mix(in srgb,var(--theme-on-accent) 76%,transparent)}
.portal-message-status.failed{color:#dc2626!important}.portal-message-retry{border:0;background:transparent;color:inherit;font:inherit;font-weight:800;cursor:pointer;text-decoration:underline;padding:0}
.portal-message.is-new-message .portal-message-bubble{animation:portalMessageArrival .46s cubic-bezier(.16,1,.3,1)}
@keyframes portalMessageArrival{0%{opacity:0;transform:translateY(14px) scale(.95)}65%{opacity:1;transform:translateY(-2px) scale(1.01)}100%{transform:none}}

/* L'indicateur de frappe n'est visible QUE lorsqu'un évènement Realtime le demande. */
.portal-chat-typing[hidden]{display:none!important}
.portal-chat-typing{padding:6px 15px 9px!important;min-height:28px!important;background:transparent!important}
.portal-chat-typing b{font-size:.62rem!important;color:var(--text-muted)!important}
.portal-chat-live-dot.is-offline{background:#94a3b8!important;box-shadow:none!important}.portal-chat-live-dot.is-reconnecting{background:#f59e0b!important}

.portal-chat-context{
  display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 11px;margin:0 10px 7px;
  border-radius:12px;background:var(--theme-accent-soft);border:1px solid var(--theme-accent-line);color:var(--theme-accent);
}
.portal-chat-context[hidden]{display:none!important}.portal-chat-context span{display:flex;align-items:center;gap:6px;min-width:0}.portal-chat-context b{font-size:.65rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-chat-context button{border:0;background:transparent;color:inherit;width:26px;height:26px;border-radius:8px;cursor:pointer;display:grid;place-items:center}.portal-chat-context button:hover{background:color-mix(in srgb,var(--theme-accent) 12%,transparent)}
.portal-chat-compose{margin:0 10px 10px!important;padding:7px!important;border-radius:18px!important;background:color-mix(in srgb,var(--card-surface) 96%,var(--theme-accent-soft))!important;border:1px solid color-mix(in srgb,var(--theme-accent) 13%,var(--card-border))!important}
.portal-chat-compose-main textarea{min-height:38px!important;max-height:110px!important;font-size:.77rem!important;line-height:1.4!important;padding:9px 10px!important}
.portal-chat-compose-btn,.portal-chat-send-btn{width:38px!important;height:38px!important;border-radius:13px!important}
.portal-chat-send-btn{background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2))!important;color:var(--theme-on-accent)!important;box-shadow:0 8px 18px color-mix(in srgb,var(--theme-accent) 22%,transparent)!important}
.portal-chat-toast{animation:portalToastIn .34s cubic-bezier(.16,1,.3,1)}
@keyframes portalToastIn{from{opacity:0;transform:translateY(12px) scale(.96)}to{opacity:1;transform:none}}
.portal-chat-launcher.has-unread .portal-chat-launcher-icon{animation:portalIncomingPulse 1.25s ease 2}
@keyframes portalIncomingPulse{0%,100%{transform:scale(1)}45%{transform:scale(1.12);box-shadow:0 0 0 9px color-mix(in srgb,var(--theme-accent) 12%,transparent),0 12px 28px color-mix(in srgb,var(--theme-accent) 30%,transparent)}}

/* Deliverables : les actions restent lisibles et le bouton commentaire ouvre le chat. */
.portal-doc-actions{gap:6px!important}.portal-doc-action{width:34px!important;height:34px!important;border-radius:11px!important}
.portal-doc-action[data-portal-doc-comment]{color:var(--theme-accent)!important;background:var(--theme-accent-soft)!important;border-color:var(--theme-accent-line)!important}

[data-theme="obsidian"] .portal-chat-window{background:rgba(10,16,27,.985)!important;border-color:rgba(158,177,211,.20)!important}
[data-theme="obsidian"] .portal-message.is-theirs .portal-message-bubble{background:#172132!important;color:#f4f7fb!important;border-color:rgba(158,177,211,.16)!important}
[data-theme="obsidian"] .portal-chat-compose{background:#121c2c!important;border-color:rgba(158,177,211,.20)!important}
[data-theme="obsidian"] .portal-chat-compose textarea{background:transparent!important;color:#f4f7fb!important;-webkit-text-fill-color:#f4f7fb!important}

@media(max-width:760px){
  .portal-chat-window{width:auto!important;height:auto!important;left:8px!important;right:8px!important;top:8px!important;bottom:8px!important;border-radius:22px!important}
  .portal-message-bubble{max-width:84%!important}.portal-chat-message-avatar{width:28px!important;height:28px!important;min-width:28px!important}
}

/* ==================== V14 PRODUCT READY ==================== */
/* Bibliothèques de ressources */
.resource-library-modal{width:min(1120px,calc(100vw - 40px));max-height:min(820px,calc(100vh - 40px));overflow:auto;padding:24px;border-radius:28px}
.resource-library-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding-bottom:18px;border-bottom:1px solid var(--card-border)}
.resource-library-head h3{font-family:var(--font-display);font-size:1.6rem;margin:5px 0}.resource-library-head p{color:var(--text-muted);font-size:.84rem}
.resource-library-head-actions{display:flex;align-items:center;gap:10px}.resource-library-toolbar{display:grid;grid-template-columns:1fr 220px;gap:12px;margin:18px 0}
.resource-library-search{position:relative}.resource-library-search svg{position:absolute;left:14px;top:50%;transform:translateY(-50%);color:var(--text-muted);pointer-events:none}.resource-library-search input{padding-left:42px}
.resource-library-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.resource-library-card{padding:17px;border-radius:20px;border:1px solid color-mix(in srgb,var(--theme-accent) 12%,var(--card-border));background:linear-gradient(145deg,var(--card-surface),color-mix(in srgb,var(--card-surface) 92%,var(--theme-accent-soft)));box-shadow:0 14px 34px rgba(15,23,42,.045);display:flex;flex-direction:column;min-height:230px;transition:var(--transition-smooth)}
.resource-library-card:hover{transform:translateY(-2px);border-color:var(--theme-accent-line);box-shadow:0 18px 42px color-mix(in srgb,var(--theme-accent) 10%,transparent)}
.resource-library-card-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:12px}.resource-library-category,.resource-library-format{font-size:.63rem;font-weight:800;letter-spacing:.04em;text-transform:uppercase}.resource-library-category{color:var(--theme-accent);background:var(--theme-accent-soft);padding:6px 8px;border-radius:999px}.resource-library-format{color:var(--text-muted)}
.resource-library-card h4{font-size:.92rem;margin-bottom:8px}.resource-library-card p{font-size:.76rem;line-height:1.58;color:var(--text-muted);white-space:pre-line;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;flex:1}
.resource-library-tags{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0}.resource-library-tags span{font-size:.62rem;padding:5px 7px;border-radius:999px;background:color-mix(in srgb,var(--theme-accent-soft) 78%,transparent);color:var(--theme-accent)}
.resource-library-card-actions{display:flex;gap:7px;flex-wrap:wrap}.resource-library-card-actions .btn-secondary{padding:7px 9px;font-size:.68rem}.resource-library-empty{grid-column:1/-1;padding:52px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:8px;color:var(--text-muted)}
.resource-item-editor{width:min(650px,calc(100vw - 28px))}.cc-resource-count{display:inline-flex;align-items:center;gap:5px;margin-top:10px;font-size:.62rem;color:var(--theme-accent);font-weight:800}.cc-resource-card.cc-has-library{cursor:pointer}.cc-resource-card.cc-has-library:hover{border-color:var(--theme-accent-line);box-shadow:0 14px 32px color-mix(in srgb,var(--theme-accent) 10%,transparent)}

/* Édition globale sécurisée */
.nexus-content-editing [data-edit-key][contenteditable="true"]{outline:1px dashed color-mix(in srgb,var(--theme-accent) 50%,transparent);outline-offset:4px;border-radius:6px;cursor:text;transition:.18s ease}
.nexus-content-editing [data-edit-key][contenteditable="true"]:hover,.nexus-content-editing [data-edit-key][contenteditable="true"]:focus{outline:2px solid var(--theme-accent);background:color-mix(in srgb,var(--theme-accent-soft) 55%,transparent);box-shadow:0 0 0 5px color-mix(in srgb,var(--theme-accent-soft) 40%,transparent)}
.settings-global-edit-card{padding:18px 20px}.settings-global-edit-card .settings-inline-actions{margin-top:12px}

/* Palettes supplémentaires */
.settings-palette-card[data-palette="midnight"] .settings-palette-swatches i:nth-child(1){background:#536a9b}.settings-palette-card[data-palette="midnight"] .settings-palette-swatches i:nth-child(2){background:#8ea4d7}.settings-palette-card[data-palette="midnight"] .settings-palette-swatches i:nth-child(3){background:#192235}
.settings-palette-card[data-palette="emerald"] .settings-palette-swatches i:nth-child(1){background:#2f7b68}.settings-palette-card[data-palette="emerald"] .settings-palette-swatches i:nth-child(2){background:#65b79e}.settings-palette-card[data-palette="emerald"] .settings-palette-swatches i:nth-child(3){background:#e5f5ef}
.settings-palette-card[data-palette="terracotta"] .settings-palette-swatches i:nth-child(1){background:#a65f49}.settings-palette-card[data-palette="terracotta"] .settings-palette-swatches i:nth-child(2){background:#d19175}.settings-palette-card[data-palette="terracotta"] .settings-palette-swatches i:nth-child(3){background:#f8e9e2}
.settings-palette-card[data-palette="ivory"] .settings-palette-swatches i:nth-child(1){background:#34312d}.settings-palette-card[data-palette="ivory"] .settings-palette-swatches i:nth-child(2){background:#988d7d}.settings-palette-card[data-palette="ivory"] .settings-palette-swatches i:nth-child(3){background:#f5f0e7}
.settings-palette-card[data-palette="lavender"] .settings-palette-swatches i:nth-child(1){background:#7565b6}.settings-palette-card[data-palette="lavender"] .settings-palette-swatches i:nth-child(2){background:#b2a5e8}.settings-palette-card[data-palette="lavender"] .settings-palette-swatches i:nth-child(3){background:#efeafd}
.settings-palette-card[data-palette="coral"] .settings-palette-swatches i:nth-child(1){background:#c85d62}.settings-palette-card[data-palette="coral"] .settings-palette-swatches i:nth-child(2){background:#f29a7b}.settings-palette-card[data-palette="coral"] .settings-palette-swatches i:nth-child(3){background:#fff0ea}
.settings-palette-grid,.settings-font-grid{grid-template-columns:repeat(3,minmax(0,1fr))}

/* Export multi-formats */
.download-menu-v14{width:320px!important;max-height:500px;overflow:auto;padding:8px!important}.download-menu-group-label{padding:7px 9px 4px;font-size:.6rem;font-weight:850;letter-spacing:.12em;color:var(--text-muted)}
.download-menu-v14 button{display:grid!important;grid-template-columns:54px 1fr!important;gap:8px!important;align-items:center!important;text-align:left!important;padding:9px 10px!important}.download-menu-v14 button span{font-weight:850;color:var(--text-primary)}.download-menu-v14 button small{font-size:.66rem;color:var(--text-muted)}.download-menu-note{margin:8px 4px 2px;padding:10px;border-radius:12px;background:var(--theme-accent-soft);border:1px solid var(--theme-accent-line);font-size:.65rem;line-height:1.5;color:var(--text-muted)}
.source-format-note{padding:10px 12px;border-radius:12px;background:var(--theme-accent-soft);border:1px solid var(--theme-accent-line);font-size:.7rem;color:var(--text-muted);line-height:1.45}

/* Tâches / projets modifiables */
.portal-task-name-input{width:100%;min-width:180px;border:1px solid transparent;background:transparent;color:var(--text-primary);font:inherit;padding:7px 8px;border-radius:10px;transition:.18s ease}.portal-task-name-input:hover:not([readonly]),.portal-task-name-input:focus:not([readonly]){border-color:var(--theme-accent-line);background:var(--theme-accent-soft);outline:none}.portal-task-name-input[readonly]{cursor:default}
.todo-item-row{display:flex!important;align-items:center;gap:6px}.todo-label-wrap{flex:1}.todo-edit-btn{opacity:.35}.todo-item-row:hover .todo-edit-btn{opacity:1}

/* Notifications globales */
.notification-pulse{animation:v14NotificationPulse .7s cubic-bezier(.16,1,.3,1) 2}@keyframes v14NotificationPulse{0%,100%{transform:scale(1)}45%{transform:scale(1.045);box-shadow:0 0 0 7px color-mix(in srgb,var(--theme-accent) 13%,transparent),0 12px 28px color-mix(in srgb,var(--theme-accent) 18%,transparent)}}
.notification-toggle-grid-v14{grid-template-columns:repeat(2,minmax(0,1fr))!important}

/* V14 : contrastes renforcés sur contrôles actionnels */
[data-theme="obsidian"] .btn-secondary,[data-theme="obsidian"] .btn-proj-pill,[data-theme="obsidian"] .action-pill-btn,[data-theme="obsidian"] .portal-doc-action,[data-theme="obsidian"] .acct-action-btn{color:#eef4ff!important;-webkit-text-fill-color:#eef4ff!important;background:#172132!important;border-color:rgba(158,177,211,.24)!important}
[data-theme="obsidian"] .btn-glow-primary,[data-theme="obsidian"] .btn-primary-burgundy,[data-theme="obsidian"] .btn-cta-gradient{color:var(--theme-on-accent)!important;-webkit-text-fill-color:var(--theme-on-accent)!important}
[data-theme="obsidian"] option{background:#121c2c!important;color:#eef4ff!important}

@media(max-width:980px){.resource-library-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.settings-palette-grid,.settings-font-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:640px){.resource-library-modal{width:calc(100vw - 16px);padding:16px}.resource-library-head{flex-direction:column}.resource-library-toolbar{grid-template-columns:1fr}.resource-library-grid,.settings-palette-grid,.settings-font-grid,.notification-toggle-grid-v14{grid-template-columns:1fr!important}}

/* ==================== V14 FINAL — PORTAIL ENTIEREMENT EDITABLE ==================== */
.portal-phase-edit-input{min-width:0;border:1px solid transparent;background:transparent;color:var(--text-primary);border-radius:10px;padding:7px 9px;transition:var(--transition-smooth)}
.portal-phase-edit-input:hover,.portal-phase-edit-input:focus{background:var(--card-surface);border-color:var(--theme-accent-line);outline:none;box-shadow:0 8px 22px color-mix(in srgb,var(--theme-accent) 9%,transparent)}
.portal-phase-edit-input.title{font-family:var(--font-display);font-size:1rem;font-weight:800;flex:1}
.portal-phase-edit-input.subtitle{display:block;width:100%;margin:4px 0 12px;color:var(--text-muted);font-size:.78rem}
.portal-delivery-cover-edit{display:grid;grid-template-columns:64px 1fr;gap:6px 10px;width:min(690px,92%)}
.portal-delivery-cover-edit input{border:1px solid rgba(255,255,255,.24);background:rgba(15,23,42,.24);backdrop-filter:blur(12px);color:white;border-radius:10px;padding:7px 9px;font-weight:700;min-width:0;text-shadow:0 1px 9px rgba(0,0,0,.16)}
.portal-delivery-cover-edit input.title{font-family:var(--font-display);font-size:1.02rem;grid-column:2}
.portal-delivery-cover-edit input[data-portal-section-subtitle]{grid-column:1/-1;font-weight:600}
.portal-delivery-cover-edit input:focus{outline:none;border-color:rgba(255,255,255,.62);background:rgba(15,23,42,.38)}
.portal-doc-inline-input{width:100%;min-width:140px;border:1px solid transparent;background:transparent;border-radius:9px;padding:7px 8px;color:var(--text-primary);font:inherit;font-weight:700}
.portal-doc-inline-input.description{font-weight:500;color:var(--text-muted)}
.portal-doc-inline-input:hover,.portal-doc-inline-input:focus{outline:none;border-color:var(--theme-accent-line);background:var(--card-surface);box-shadow:0 7px 18px color-mix(in srgb,var(--theme-accent) 8%,transparent)}
[data-theme="obsidian"] .portal-doc-inline-input,[data-theme="obsidian"] .portal-phase-edit-input{color:#edf4ff}
[data-theme="obsidian"] .portal-doc-inline-input.description,[data-theme="obsidian"] .portal-phase-edit-input.subtitle{color:rgba(229,236,247,.75)}
@media(max-width:760px){.portal-delivery-cover-edit{grid-template-columns:1fr}.portal-delivery-cover-edit input.title,.portal-delivery-cover-edit input[data-portal-section-subtitle]{grid-column:1}.portal-phase-edit-input.title{font-size:.92rem}}

/* ========================================================================== 
   V14.1 — CLEAN NAV CARDS + USER THEME STUDIO
   ========================================================================== */

/* Cartes de navigation : aucune flèche, aucun label permanent. */
.blueprint-photo-card .blueprint-card-kicker,
.blueprint-photo-card .blueprint-arrow{display:none!important}
.blueprint-photo-card{cursor:pointer;isolation:isolate}
.blueprint-photo-card .blueprint-card-media{z-index:0}
.blueprint-photo-card .blueprint-card-body{z-index:1}
.blueprint-photo-card .blueprint-card-body p{right:54px!important}
.nav-card-edit-btn{
  position:absolute;right:12px;bottom:12px;z-index:5;width:34px;height:34px;border-radius:12px;
  display:grid;place-items:center;border:1px solid rgba(255,255,255,.32);background:rgba(15,23,42,.48);
  color:#fff;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);box-shadow:0 9px 24px rgba(15,23,42,.16);
  cursor:pointer;opacity:0;transform:translateY(5px) scale(.94);transition:all .2s ease
}
.blueprint-photo-card:hover .nav-card-edit-btn,.nav-card-edit-btn:focus-visible{opacity:1;transform:none}
.nav-card-edit-btn:hover{background:var(--theme-accent);color:var(--theme-on-accent);border-color:color-mix(in srgb,var(--theme-accent) 70%,white)}
/* Les covers D&A contiennent déjà leur titre. Pour une photo personnelle, NEXUS ajoute automatiquement le nom de la section. */
.blueprint-photo-card.has-custom-cover .blueprint-card-body h3{
  display:block!important;position:absolute;left:14px;bottom:14px;margin:0;padding:8px 11px;border-radius:12px;
  background:rgba(15,23,42,.56);border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);
  color:#fff!important;font-size:.82rem!important;text-shadow:0 2px 12px rgba(0,0,0,.22)
}
.blueprint-photo-card.has-custom-cover .blueprint-card-body p{display:none!important}

/* Cinquième thème dans la grille. */
.settings-theme-grid-4{grid-template-columns:repeat(5,minmax(0,1fr))!important}
.settings-theme-preview.custom{background:linear-gradient(135deg,#eadce2,#fff)}
.settings-theme-preview.custom i,.settings-theme-preview.custom span{background:linear-gradient(135deg,var(--theme-accent-soft),var(--card-surface));border:1px solid var(--theme-accent-line)}
.settings-custom-theme-card strong::after{content:' ✦';color:var(--theme-accent)}

/* Theme Studio */
.settings-theme-studio{margin-top:18px}
.settings-section-head.compact{align-items:center}
.settings-theme-studio-grid{align-items:start}
.custom-studio-card{min-height:100%}
.custom-color-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:14px}
.custom-color-grid label{display:grid;grid-template-columns:1fr 40px 82px;gap:7px;align-items:center;padding:9px;border:1px solid var(--card-border);border-radius:13px;background:color-mix(in srgb,var(--card-surface) 94%,var(--theme-accent-soft))}
.custom-color-grid label>span{font-size:.69rem;font-weight:800;color:var(--text-muted)}
.custom-color-grid input[type=color]{width:36px;height:32px;padding:0;border:0;background:transparent;cursor:pointer;border-radius:9px;overflow:hidden}
.custom-color-grid .color-hex{height:32px!important;padding:6px 7px!important;font-size:.66rem!important;text-transform:uppercase}
.custom-font-upload-row{display:flex;align-items:center;gap:9px;margin:8px 0 13px}
.custom-font-upload-row>span{font-size:.69rem;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.custom-font-preview{margin:12px 0;padding:16px;border-radius:16px;border:1px solid var(--card-border);background:linear-gradient(135deg,var(--card-surface),var(--theme-accent-soft))}
.custom-font-preview strong{display:block;font-family:var(--font-display);font-size:1.15rem}.custom-font-preview span{display:block;font-size:.75rem;color:var(--text-muted);margin-top:6px;line-height:1.45}
.custom-theme-form-grid{margin:8px 0 13px}.custom-theme-form-grid label>input[type=color]{height:42px;border:1px solid var(--card-border);border-radius:11px;background:var(--card-surface);padding:4px;width:100%}.custom-theme-form-grid label>input[type=range]{width:100%;accent-color:var(--theme-accent);margin-top:8px}
.custom-library-list{display:flex;flex-direction:column;gap:7px;margin-top:13px;max-height:230px;overflow:auto;padding-right:2px}
.custom-library-item{display:grid;grid-template-columns:32px minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:9px;border:1px solid var(--card-border);border-radius:13px;background:color-mix(in srgb,var(--card-surface) 96%,var(--theme-accent-soft))}
.custom-library-item>div{min-width:0}.custom-library-item strong,.custom-library-item small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.custom-library-item strong{font-size:.72rem}.custom-library-item small{font-size:.62rem;color:var(--text-muted);margin-top:2px}
.custom-library-item .btn-secondary{padding:6px 8px!important;font-size:.65rem!important}
.custom-library-swatch,.custom-library-theme,.custom-library-icon{width:32px;height:32px;border-radius:10px;display:block;border:1px solid var(--card-border);box-shadow:var(--shadow-soft)}
.custom-library-swatch{background:linear-gradient(135deg,var(--a),var(--b))}
.custom-library-theme{background:linear-gradient(135deg,var(--bg) 0 52%,var(--surface) 52% 100%);position:relative}.custom-library-theme::after{content:'';position:absolute;width:10px;height:10px;border-radius:50%;background:var(--text);right:5px;bottom:5px}
.custom-library-icon{display:grid;place-items:center;background:var(--theme-accent-soft);color:var(--theme-accent)}
.custom-library-empty{padding:12px;border-radius:12px;border:1px dashed var(--card-border);font-size:.7rem;color:var(--text-muted);text-align:center}
.btn-icon-ghost.danger{color:var(--accent-rose)}

/* Gestion des 6 covers */
.settings-nav-cover-manager{margin-top:18px}
.settings-nav-cover-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.settings-nav-cover-item{display:grid;grid-template-columns:94px minmax(0,1fr);grid-template-rows:auto auto;gap:8px 11px;padding:10px;border:1px solid var(--card-border);border-radius:17px;background:color-mix(in srgb,var(--card-surface) 96%,var(--theme-accent-soft))}
.settings-nav-cover-preview{grid-row:1/3;width:94px;height:68px;border-radius:13px;background-size:cover;background-position:center;box-shadow:var(--shadow-soft);border:1px solid var(--card-border)}
.settings-nav-cover-copy{min-width:0}.settings-nav-cover-copy strong,.settings-nav-cover-copy span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.settings-nav-cover-copy strong{font-size:.75rem}.settings-nav-cover-copy span{font-size:.65rem;color:var(--text-muted);margin-top:3px}
.settings-nav-cover-actions{display:flex;align-items:center;gap:6px}.settings-nav-cover-actions .btn-secondary{padding:6px 9px!important;font-size:.66rem!important}.settings-nav-cover-actions .btn-icon-ghost{width:31px;height:31px}

/* Custom theme dark-mode contrast. */
html[data-theme="custom"][data-custom-mode="dark"]{color-scheme:dark}
html[data-theme="custom"][data-custom-mode="dark"] input,
html[data-theme="custom"][data-custom-mode="dark"] select,
html[data-theme="custom"][data-custom-mode="dark"] textarea,
html[data-theme="custom"][data-custom-mode="dark"] .modern-input{
  color:var(--text-primary)!important;background:color-mix(in srgb,var(--card-surface) 93%,black)!important;border-color:var(--card-border)!important
}
html[data-theme="custom"][data-custom-mode="dark"] input::placeholder,
html[data-theme="custom"][data-custom-mode="dark"] textarea::placeholder{color:color-mix(in srgb,var(--text-muted) 75%,transparent)!important}
html[data-theme="custom"][data-custom-mode="dark"] .noise-overlay{background-image:radial-gradient(rgba(255,255,255,.035) 1px,transparent 0)}

@media(max-width:1320px){.settings-theme-grid-4{grid-template-columns:repeat(3,minmax(0,1fr))!important}.settings-theme-studio-grid{grid-template-columns:1fr 1fr!important}.settings-nav-cover-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.settings-theme-studio-grid{grid-template-columns:1fr!important}.settings-nav-cover-grid{grid-template-columns:1fr}.custom-color-grid{grid-template-columns:1fr}}
@media(max-width:700px){.settings-theme-grid-4{grid-template-columns:1fr!important}.nav-card-edit-btn{opacity:1;transform:none;width:32px;height:32px}.settings-nav-cover-item{grid-template-columns:80px minmax(0,1fr)}.settings-nav-cover-preview{width:80px}}

/* ============================================================
   V14.2 — THEME STUDIO PREMIUM UX
   Visual redesign only: existing IDs + logic are preserved.
   ============================================================ */
.theme-studio-premium{margin-top:22px;display:flex;flex-direction:column;gap:18px}
.theme-studio-hero{position:relative;overflow:hidden;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(360px,.9fr);gap:24px;align-items:center;padding:28px!important;border-radius:28px!important;background:
  radial-gradient(circle at 12% 18%,color-mix(in srgb,var(--theme-accent) 14%,transparent),transparent 32%),
  linear-gradient(135deg,color-mix(in srgb,var(--card-surface) 97%,var(--theme-accent-soft)),var(--card-surface))!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 16%,var(--card-border))!important;
  box-shadow:0 28px 70px rgba(15,23,42,.08)!important
}
.theme-studio-hero:after{content:'';position:absolute;width:340px;height:340px;border-radius:50%;right:-160px;top:-190px;background:color-mix(in srgb,var(--theme-accent-2) 12%,transparent);filter:blur(8px);pointer-events:none}
.theme-studio-hero-copy{position:relative;z-index:2;max-width:720px}
.theme-studio-eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;background:var(--theme-accent-soft);color:var(--theme-accent);font-size:.68rem;font-weight:850;letter-spacing:.08em;border:1px solid var(--theme-accent-line);margin-bottom:14px}
.theme-studio-hero-copy h3{font-family:var(--font-display)!important;font-size:clamp(1.75rem,2.2vw,2.5rem)!important;line-height:1.05!important;letter-spacing:-.035em;margin:0;color:var(--text-primary)!important}
.theme-studio-hero-copy p{margin:13px 0 0;max-width:62ch;font-size:.88rem;line-height:1.68;color:var(--text-muted)!important}
.theme-studio-hero-badges{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.theme-studio-hero-badges span{display:inline-flex;align-items:center;gap:6px;padding:8px 11px;border-radius:12px;background:color-mix(in srgb,var(--card-surface) 88%,transparent);border:1px solid var(--card-border);font-size:.68rem;font-weight:750;color:var(--text-primary);box-shadow:0 8px 18px rgba(15,23,42,.035)}

.theme-studio-live-preview{position:relative;z-index:2;padding:14px;border-radius:24px;background:linear-gradient(155deg,color-mix(in srgb,var(--card-surface) 92%,var(--theme-accent-soft)),var(--card-surface));border:1px solid color-mix(in srgb,var(--theme-accent) 15%,var(--card-border));box-shadow:0 20px 48px rgba(15,23,42,.1)}
.theme-studio-preview-top{display:flex;align-items:center;justify-content:space-between;padding:0 2px 10px}
.theme-studio-preview-brand{display:flex;align-items:center;gap:8px;font-size:.68rem;color:var(--text-primary)}
.theme-studio-preview-brand i{width:10px;height:10px;border-radius:4px;background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2));box-shadow:0 0 0 4px var(--theme-accent-soft)}
.theme-studio-preview-status{font-size:.61rem;font-weight:800;color:var(--theme-accent);padding:5px 8px;border-radius:999px;background:var(--theme-accent-soft)}
.theme-studio-preview-app{display:grid;grid-template-columns:52px 1fr;min-height:210px;border-radius:18px;overflow:hidden;border:1px solid var(--card-border);background:var(--card-surface)}
.theme-studio-preview-sidebar{padding:14px 10px;background:linear-gradient(180deg,color-mix(in srgb,var(--theme-accent) 12%,var(--card-surface)),color-mix(in srgb,var(--card-surface) 92%,var(--theme-accent-soft)));border-right:1px solid var(--card-border);display:flex;flex-direction:column;gap:10px;align-items:center}
.theme-studio-preview-sidebar span{width:25px;height:8px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 18%,transparent)}
.theme-studio-preview-sidebar span:first-child{height:25px;border-radius:9px;margin-bottom:4px;background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2));box-shadow:0 6px 16px color-mix(in srgb,var(--theme-accent) 22%,transparent)}
.theme-studio-preview-sidebar span.active{width:28px;background:var(--theme-accent)}
.theme-studio-preview-canvas{padding:14px;background:linear-gradient(145deg,color-mix(in srgb,var(--bg-app) 96%,white),var(--bg-app))}
.theme-studio-preview-toolbar{display:flex;justify-content:flex-end;gap:6px;margin-bottom:12px}.theme-studio-preview-toolbar i{width:38px;height:10px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 12%,transparent);border:1px solid var(--card-border)}.theme-studio-preview-toolbar i.accent{background:linear-gradient(90deg,var(--theme-accent),var(--theme-accent-2));border:none}
.theme-studio-preview-cards{display:grid;grid-template-columns:1fr 1fr;gap:8px}.theme-studio-preview-cards article{padding:10px;border-radius:12px;background:var(--card-surface);border:1px solid var(--card-border);box-shadow:0 8px 20px rgba(15,23,42,.035)}.theme-studio-preview-cards span{display:block;width:24px;height:24px;border-radius:8px;background:var(--theme-accent-soft);margin-bottom:10px}.theme-studio-preview-cards b,.theme-studio-preview-cards em{display:block;height:7px;border-radius:999px;background:color-mix(in srgb,var(--text-primary) 20%,transparent)}.theme-studio-preview-cards em{width:60%;height:5px;margin-top:6px;background:color-mix(in srgb,var(--text-muted) 15%,transparent)}
.theme-studio-preview-progress{height:9px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 10%,transparent);margin:12px 0;overflow:hidden}.theme-studio-preview-progress span{display:block;width:68%;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--theme-accent),var(--theme-accent-2))}
.theme-studio-preview-lines{display:flex;gap:6px}.theme-studio-preview-lines i{height:5px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 13%,transparent);flex:1}.theme-studio-preview-lines i:nth-child(2){flex:.65}.theme-studio-preview-lines i:nth-child(3){flex:.4}

.theme-studio-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;padding:7px;border-radius:20px;background:color-mix(in srgb,var(--card-surface) 90%,var(--theme-accent-soft));border:1px solid var(--card-border);box-shadow:0 12px 30px rgba(15,23,42,.045)}
.theme-studio-tab{appearance:none;border:1px solid transparent;background:transparent;border-radius:15px;padding:11px 13px;display:flex;align-items:center;gap:10px;text-align:left;cursor:pointer;color:var(--text-muted);transition:all .25s ease}
.theme-studio-tab>span{width:38px;height:38px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--card-surface) 86%,var(--theme-accent-soft));border:1px solid var(--card-border);color:var(--text-muted);transition:all .25s ease}
.theme-studio-tab div{min-width:0}.theme-studio-tab strong,.theme-studio-tab small{display:block}.theme-studio-tab strong{font-size:.79rem;color:var(--text-primary)}.theme-studio-tab small{font-size:.62rem;color:var(--text-muted);margin-top:2px}
.theme-studio-tab:hover{background:color-mix(in srgb,var(--card-surface) 76%,var(--theme-accent-soft));transform:translateY(-1px)}
.theme-studio-tab.active{background:var(--card-surface);border-color:var(--theme-accent-line);box-shadow:0 10px 26px color-mix(in srgb,var(--theme-accent) 10%,rgba(15,23,42,.04));color:var(--theme-accent)}
.theme-studio-tab.active>span{background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2));border-color:transparent;color:var(--theme-on-accent);box-shadow:0 8px 18px color-mix(in srgb,var(--theme-accent) 18%,transparent)}

.theme-studio-panel{display:none;animation:themeStudioIn .28s ease}.theme-studio-panel.active{display:block}@keyframes themeStudioIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}
.theme-studio-editor-layout{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(300px,.75fr);gap:16px;align-items:start}
.theme-studio-editor-card,.theme-studio-library-card{border-radius:24px!important;padding:20px!important;border:1px solid color-mix(in srgb,var(--theme-accent) 12%,var(--card-border))!important;background:linear-gradient(145deg,var(--card-surface),color-mix(in srgb,var(--card-surface) 94%,var(--theme-accent-soft)))!important;box-shadow:0 18px 45px rgba(15,23,42,.055)!important}
.theme-studio-card-heading,.theme-studio-library-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.theme-studio-card-heading>div{display:flex;align-items:center;gap:11px}.theme-studio-step{width:34px;height:34px;border-radius:11px;display:grid;place-items:center;font:800 .67rem var(--font-display);color:var(--theme-accent);background:var(--theme-accent-soft);border:1px solid var(--theme-accent-line)}
.theme-studio-card-heading h4,.theme-studio-library-head h4{font-family:var(--font-display)!important;font-size:1.02rem!important;margin:0;color:var(--text-primary)!important}.theme-studio-card-heading p{font-size:.68rem!important;margin:3px 0 0!important;color:var(--text-muted)!important}
.theme-studio-chip{padding:6px 8px;border-radius:999px;background:color-mix(in srgb,var(--theme-accent-soft) 82%,var(--card-surface));border:1px solid var(--theme-accent-line);font-size:.58rem;font-weight:850;color:var(--theme-accent);white-space:nowrap}
.theme-studio-name-field{margin-bottom:14px!important}.theme-studio-name-field>span{font-size:.67rem!important;font-weight:800!important;color:var(--text-muted)!important;letter-spacing:.02em}.theme-studio-name-field .modern-input{height:44px!important;border-radius:13px!important;margin-top:7px!important}

.theme-studio-color-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important;margin-top:4px!important}
.theme-studio-color-grid>label{display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:7px!important;padding:10px 11px!important;border-radius:15px!important;background:color-mix(in srgb,var(--card-surface) 96%,var(--theme-accent-soft))!important;transition:all .2s ease}
.theme-studio-color-grid>label:hover{border-color:var(--theme-accent-line)!important;transform:translateY(-1px);box-shadow:0 8px 18px rgba(15,23,42,.035)}
.theme-studio-color-grid>label>span{font-size:.63rem!important;color:var(--text-muted)!important;letter-spacing:.02em}
.theme-studio-color-control{display:grid;grid-template-columns:40px 1fr;gap:8px;align-items:center}.theme-studio-color-control input[type=color]{width:40px!important;height:36px!important;border-radius:11px!important;border:1px solid var(--card-border)!important;background:var(--card-surface)!important;padding:3px!important}.theme-studio-color-control .color-hex{height:36px!important;border-radius:10px!important;font-size:.67rem!important}
.theme-studio-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.theme-studio-actions .btn-glow-primary,.theme-studio-actions .btn-secondary{min-height:40px;border-radius:12px!important}

.theme-studio-library-card{position:sticky;top:18px;min-height:360px}.theme-studio-library-head span{display:block;font-size:.56rem;font-weight:850;letter-spacing:.08em;color:var(--theme-accent);margin-bottom:4px}.theme-studio-library-head>i{color:var(--theme-accent)}
.theme-studio-swatch-preview{display:flex;gap:0;height:86px;border-radius:18px;overflow:hidden;border:1px solid var(--card-border);box-shadow:0 12px 28px rgba(15,23,42,.05);margin:4px 0 12px}.theme-studio-swatch-preview span{flex:1;background:var(--c);transition:flex .25s ease}.theme-studio-swatch-preview span:hover{flex:1.55}
.theme-studio-library-note{font-size:.66rem;line-height:1.55;color:var(--text-muted);margin:0 0 12px}
.custom-library-list{margin-top:8px!important;max-height:280px!important;gap:8px!important}.custom-library-item{border-radius:14px!important;padding:9px 10px!important;background:color-mix(in srgb,var(--card-surface) 97%,var(--theme-accent-soft))!important;transition:.2s ease}.custom-library-item:hover{transform:translateY(-1px);border-color:var(--theme-accent-line)!important;box-shadow:0 8px 18px rgba(15,23,42,.035)}
.custom-library-empty{padding:18px!important;border-radius:15px!important;background:color-mix(in srgb,var(--card-surface) 97%,var(--theme-accent-soft));border-style:dashed!important}

.theme-studio-font-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px}.theme-studio-font-block{padding:13px;border-radius:17px;border:1px solid var(--card-border);background:color-mix(in srgb,var(--card-surface) 97%,var(--theme-accent-soft))}.theme-studio-font-label span,.theme-studio-font-label small{display:block}.theme-studio-font-label span{font-size:.68rem;font-weight:850;color:var(--text-primary)}.theme-studio-font-label small{font-size:.58rem;color:var(--text-muted);margin-top:3px;margin-bottom:9px}.theme-studio-font-block>.modern-input{height:42px!important;border-radius:12px!important}.custom-font-upload-row{margin:9px 0 0!important;padding-top:9px;border-top:1px solid var(--card-border)}.custom-font-upload-row .btn-secondary{padding:7px 9px!important;font-size:.64rem!important}.custom-font-upload-row>span{font-size:.59rem!important}
.theme-studio-type-preview{min-height:210px;display:flex;flex-direction:column;justify-content:center;margin:0 0 14px!important;padding:22px!important;background:radial-gradient(circle at 90% 10%,var(--theme-accent-soft),transparent 34%),linear-gradient(145deg,var(--card-surface),color-mix(in srgb,var(--card-surface) 92%,var(--theme-accent-soft)))!important;border-radius:20px!important}.theme-studio-type-preview small{font-size:.58rem;font-weight:850;letter-spacing:.11em;color:var(--theme-accent);margin-bottom:12px}.theme-studio-type-preview strong{font-size:1.55rem!important;line-height:1.05}.theme-studio-type-preview span{font-size:.71rem!important;line-height:1.55;margin-top:10px!important}.theme-studio-type-preview em{font-style:normal;margin-top:18px;padding-top:13px;border-top:1px solid var(--card-border);font-size:.77rem;letter-spacing:.08em;color:var(--text-muted)}

.theme-studio-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.theme-studio-theme-grid>label{padding:10px 11px;border:1px solid var(--card-border);border-radius:15px;background:color-mix(in srgb,var(--card-surface) 97%,var(--theme-accent-soft))}.theme-studio-theme-grid>label>span{display:block;font-size:.63rem!important;font-weight:800!important;color:var(--text-muted)!important;margin-bottom:7px}.theme-studio-theme-grid .modern-input{height:38px!important;border-radius:10px!important}.theme-color-field>div{display:flex;align-items:center;gap:8px}.theme-color-field input[type=color]{width:48px!important;height:36px!important;border:1px solid var(--card-border)!important;border-radius:10px!important;padding:3px!important;background:var(--card-surface)!important}.theme-color-field small{font-size:.59rem;color:var(--text-muted)}
.theme-studio-range{display:flex;align-items:center;gap:8px}.theme-studio-range input{flex:1;accent-color:var(--theme-accent)}.theme-studio-range b{min-width:38px;padding:5px 6px;border-radius:8px;background:var(--theme-accent-soft);font-size:.58rem;text-align:center;color:var(--theme-accent)}
.theme-studio-associations{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.theme-studio-associations .settings-field{margin:0!important}.theme-studio-associations .modern-input{height:42px!important;border-radius:12px!important;margin-top:6px!important}
.theme-studio-mini-dashboard{display:grid;grid-template-columns:48px 1fr;min-height:210px;border-radius:19px;overflow:hidden;border:1px solid var(--card-border);background:var(--card-surface);margin-bottom:14px;box-shadow:0 12px 30px rgba(15,23,42,.05)}.mini-dash-sidebar{padding:13px 9px;display:flex;flex-direction:column;gap:9px;align-items:center;background:linear-gradient(180deg,color-mix(in srgb,var(--theme-accent) 10%,var(--card-surface)),var(--card-surface));border-right:1px solid var(--card-border)}.mini-dash-sidebar span{width:23px;height:8px;border-radius:999px;background:color-mix(in srgb,var(--text-muted) 16%,transparent)}.mini-dash-sidebar span:first-child{height:23px;border-radius:8px;background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2))}.mini-dash-main{padding:13px;background:var(--bg-app)}.mini-dash-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:11px}.mini-dash-header i{width:60px;height:7px;border-radius:999px;background:color-mix(in srgb,var(--text-primary) 18%,transparent)}.mini-dash-header b{width:44px;height:18px;border-radius:999px;background:var(--theme-accent)}.mini-dash-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:7px}.mini-dash-grid article{height:68px;border-radius:11px;background:var(--card-surface);border:1px solid var(--card-border)}.mini-dash-row{display:flex;gap:6px;margin-top:10px}.mini-dash-row i{height:38px;flex:1;border-radius:10px;background:var(--card-surface);border:1px solid var(--card-border)}

[data-theme="obsidian"] .theme-studio-hero,[data-theme="obsidian"] .theme-studio-editor-card,[data-theme="obsidian"] .theme-studio-library-card{box-shadow:0 22px 55px rgba(0,0,0,.24)!important}
[data-theme="obsidian"] .theme-studio-tabs{background:rgba(12,18,29,.84)}
[data-theme="obsidian"] .theme-studio-tab.active{background:rgba(18,26,41,.98)}

@media(max-width:1180px){.theme-studio-hero{grid-template-columns:1fr}.theme-studio-live-preview{max-width:680px}.theme-studio-editor-layout{grid-template-columns:1fr}.theme-studio-library-card{position:static}.theme-studio-font-fields{grid-template-columns:1fr}}
@media(max-width:820px){.theme-studio-tabs{grid-template-columns:1fr}.theme-studio-color-grid,.theme-studio-theme-grid,.theme-studio-associations{grid-template-columns:1fr!important}.theme-studio-hero{padding:20px!important}.theme-studio-editor-card,.theme-studio-library-card{padding:16px!important}.theme-studio-preview-app{min-height:180px}.theme-studio-tab small{display:none}}
@media(max-width:560px){.theme-studio-hero-badges{display:none}.theme-studio-live-preview{padding:10px}.theme-studio-preview-app{grid-template-columns:42px 1fr}.theme-studio-card-heading{align-items:flex-start}.theme-studio-chip{display:none}.theme-studio-color-control{grid-template-columns:36px 1fr}.theme-studio-font-fields{grid-template-columns:1fr}.theme-studio-actions>*{width:100%;justify-content:center}.theme-studio-hero-copy h3{font-size:1.65rem!important}}

/* ============================================================================
   V14.3 — SETTINGS ULTRA PREMIUM + CLEAN CREATIVE RESERVOIR
   Visual-only refinement. Keeps all existing settings logic intact.
   ============================================================================ */

/* Creative reservoir: visuals stay completely clean */
.gallery-tile-tag{display:none!important}
.gallery-tile{position:relative;overflow:hidden;border-radius:18px!important;background:var(--card-surface)}
.gallery-tile img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s cubic-bezier(.2,.7,.2,1),filter .35s ease}
.gallery-item-shell:hover .gallery-tile img{transform:scale(1.025);filter:saturate(1.03) contrast(1.015)}
.gallery-item-shell{gap:8px!important}
.gallery-item-shell .gallery-edit-btn{position:static!important;align-self:flex-end!important;margin:0!important;min-height:31px!important;padding:6px 10px!important;border-radius:10px!important;font-size:.67rem!important;box-shadow:none!important;background:color-mix(in srgb,var(--card-surface) 90%,var(--theme-accent-soft))!important;border:1px solid color-mix(in srgb,var(--theme-accent) 16%,var(--card-border))!important;color:var(--text-primary)!important}
.gallery-item-shell .gallery-edit-btn:hover{background:var(--theme-accent-soft)!important;border-color:var(--theme-accent-line)!important;color:var(--theme-accent)!important;transform:translateY(-1px)!important}

/* ---------- Settings control center shell ---------- */
#view-parametres{position:relative;isolation:isolate}
#view-parametres::before{
  content:"";position:absolute;inset:-36px -28px auto;height:360px;z-index:-2;pointer-events:none;
  background:
    radial-gradient(circle at 12% 10%,color-mix(in srgb,var(--theme-accent) 15%,transparent),transparent 34%),
    radial-gradient(circle at 86% 12%,color-mix(in srgb,var(--theme-accent-2) 13%,transparent),transparent 32%);
  filter:blur(2px)
}
.settings-suite{
  --settings-accent:var(--theme-accent)!important;
  --settings-soft:var(--theme-accent-soft)!important;
  --settings-line:var(--theme-accent-line)!important;
  display:flex;flex-direction:column;gap:18px;padding-bottom:30px!important
}

/* ---------- Hero ---------- */
.settings-hero{
  position:relative;min-height:250px!important;padding:34px 38px!important;border-radius:30px!important;overflow:hidden!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 14%,var(--card-border))!important;
  background:
    linear-gradient(128deg,color-mix(in srgb,var(--card-surface) 94%,var(--theme-accent-soft)),var(--card-surface))!important;
  box-shadow:0 26px 70px rgba(15,23,42,.09),inset 0 1px 0 rgba(255,255,255,.55)!important
}
.settings-hero::before{
  content:"";position:absolute;width:310px;height:310px;border-radius:50%;right:-68px;top:-115px;
  background:radial-gradient(circle,color-mix(in srgb,var(--theme-accent) 20%,transparent),transparent 68%);pointer-events:none
}
.settings-hero::after{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.2;
  background-image:linear-gradient(color-mix(in srgb,var(--theme-accent) 10%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--theme-accent) 10%,transparent) 1px,transparent 1px);
  background-size:38px 38px;mask-image:linear-gradient(90deg,#000,transparent 73%)
}
.settings-hero-copy,.settings-health-orbit{position:relative;z-index:1}
.settings-hero-copy .eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border-radius:999px;background:var(--theme-accent-soft);border:1px solid var(--theme-accent-line);color:var(--theme-accent);font-size:.67rem;font-weight:850;letter-spacing:.11em}
.settings-hero-copy .page-title{font-size:2.05rem!important;letter-spacing:-.035em!important;margin:12px 0 8px!important}
.settings-hero-copy .page-subtitle{font-size:.84rem!important;line-height:1.7!important;max-width:700px!important}
.settings-hero-badges{gap:8px!important;margin-top:20px!important}
.settings-status-pill{background:color-mix(in srgb,var(--card-surface) 82%,transparent)!important;backdrop-filter:blur(16px);border-color:color-mix(in srgb,var(--theme-accent) 12%,var(--card-border))!important;box-shadow:0 8px 22px rgba(15,23,42,.035)}
.settings-health-orbit{width:190px!important;min-width:190px!important;height:190px!important;display:grid!important;place-items:center!important;border-radius:50%!important;background:radial-gradient(circle at 50% 50%,color-mix(in srgb,var(--theme-accent-soft) 82%,transparent),transparent 70%);border:1px solid color-mix(in srgb,var(--theme-accent) 10%,transparent)!important}
.settings-health-ring{width:126px!important;height:126px!important;box-shadow:0 18px 40px color-mix(in srgb,var(--theme-accent) 16%,transparent),inset 0 0 0 11px color-mix(in srgb,var(--card-surface) 78%,transparent)!important}
.settings-health-ring strong{font-size:1.45rem!important}
.settings-health-label{font-size:.63rem!important;letter-spacing:.09em!important;font-weight:850!important;color:var(--text-muted)!important}

/* ---------- Overview KPI cards ---------- */
.settings-overview-grid{gap:12px!important;margin-top:0!important}
.settings-overview-card{
  position:relative;min-height:112px!important;padding:18px 19px!important;border-radius:22px!important;overflow:hidden;
  background:linear-gradient(145deg,var(--card-surface),color-mix(in srgb,var(--card-surface) 94%,var(--theme-accent-soft)))!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 9%,var(--card-border))!important;
  box-shadow:0 14px 34px rgba(15,23,42,.045)!important;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease
}
.settings-overview-card::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:linear-gradient(90deg,var(--theme-accent),var(--theme-accent-2));opacity:.65}
.settings-overview-card:hover{transform:translateY(-3px);border-color:var(--theme-accent-line)!important;box-shadow:0 20px 42px rgba(15,23,42,.075)!important}
.settings-overview-icon{width:42px!important;height:42px!important;border-radius:14px!important;background:linear-gradient(145deg,var(--theme-accent-soft),color-mix(in srgb,var(--theme-accent-soft) 45%,var(--card-surface)))!important}
.settings-overview-card small{font-size:.61rem!important;letter-spacing:.1em!important}.settings-overview-card strong{font-size:1.05rem!important;margin:4px 0!important}.settings-overview-card span:last-child{font-size:.69rem!important}

/* ---------- Navigation ---------- */
.settings-nav{
  position:sticky!important;top:66px!important;z-index:40!important;display:flex!important;gap:5px!important;padding:7px!important;border-radius:20px!important;
  background:color-mix(in srgb,var(--card-surface) 84%,transparent)!important;backdrop-filter:blur(28px) saturate(145%)!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 10%,var(--card-border))!important;box-shadow:0 18px 42px rgba(15,23,42,.08)!important
}
.settings-nav-btn{
  min-height:42px!important;padding:9px 12px!important;border-radius:13px!important;font-size:.73rem!important;font-weight:780!important;
  border:1px solid transparent!important;transition:all .2s ease!important
}
.settings-nav-btn svg{width:15px!important;height:15px!important}
.settings-nav-btn:hover{background:var(--theme-accent-soft)!important;border-color:color-mix(in srgb,var(--theme-accent) 10%,transparent)!important;color:var(--text-primary)!important}
.settings-nav-btn.active{background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2))!important;color:var(--theme-on-accent)!important;border-color:transparent!important;box-shadow:0 9px 24px color-mix(in srgb,var(--theme-accent) 26%,transparent)!important}
.settings-nav-btn.danger:not(.active){color:#b65a62!important}

/* ---------- Panel canvas ---------- */
.settings-panels{position:relative}
.settings-panel.active{
  position:relative;padding:24px!important;border-radius:28px!important;
  background:linear-gradient(155deg,color-mix(in srgb,var(--card-surface) 87%,transparent),color-mix(in srgb,var(--card-surface) 96%,var(--theme-accent-soft)))!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 8%,var(--card-border))!important;
  box-shadow:0 24px 65px rgba(15,23,42,.055)!important
}
.settings-section-head{align-items:center!important;margin:0 0 20px!important;padding-bottom:17px!important;border-bottom:1px solid color-mix(in srgb,var(--theme-accent) 8%,var(--card-border))!important}
.settings-section-head .section-heading-tag{display:inline-flex!important;padding:6px 9px!important;border-radius:999px!important;background:var(--theme-accent-soft)!important;color:var(--theme-accent)!important;border:1px solid var(--theme-accent-line)!important;font-size:.6rem!important;letter-spacing:.08em!important}
.settings-section-head h3{font-size:1.35rem!important;letter-spacing:-.02em!important;margin:7px 0 4px!important}.settings-section-head p{font-size:.78rem!important;max-width:720px!important}

/* ---------- Generic control cards ---------- */
.settings-suite .spotlight-card:not(.settings-hero):not(.settings-nav):not(.settings-overview-card){
  border-radius:22px!important;border-color:color-mix(in srgb,var(--theme-accent) 8%,var(--card-border))!important;
  box-shadow:0 12px 34px rgba(15,23,42,.045)!important
}
.settings-card-head{padding-bottom:12px!important;border-bottom:1px solid color-mix(in srgb,var(--theme-accent) 8%,var(--card-border))!important;margin-bottom:14px!important}
.settings-card-icon,.settings-toggle-icon,.settings-data-icon{width:40px!important;height:40px!important;border-radius:14px!important;background:linear-gradient(145deg,var(--theme-accent-soft),color-mix(in srgb,var(--theme-accent-soft) 46%,var(--card-surface)))!important}
.settings-card-head h4{font-size:.94rem!important;letter-spacing:-.01em!important}.settings-card-head p{font-size:.69rem!important;line-height:1.55!important}

/* ---------- Studio/profile ---------- */
.settings-studio-grid{grid-template-columns:310px minmax(0,1fr)!important;gap:14px!important}
.settings-profile-card{min-height:390px!important;padding:30px 24px!important;background:radial-gradient(circle at 50% 22%,var(--theme-accent-soft),transparent 36%),var(--card-surface)!important}
.settings-avatar-shell{width:118px!important;height:118px!important;border-radius:32px!important;box-shadow:0 18px 38px color-mix(in srgb,var(--theme-accent) 13%,transparent)!important}
.settings-avatar-shell img{border-radius:27px!important}
.settings-avatar-action{width:38px!important;height:38px!important;border-radius:13px!important;background:linear-gradient(145deg,var(--card-surface),color-mix(in srgb,var(--card-surface) 86%,var(--theme-accent-soft)))!important}
.settings-profile-card h3{font-size:1.32rem!important;margin-top:4px!important}.settings-profile-card>p{font-size:.76rem!important}
.settings-profile-meta span{background:var(--theme-accent-soft)!important;border:1px solid color-mix(in srgb,var(--theme-accent) 10%,transparent)!important}
.settings-form-card{padding:22px!important}
.settings-form-grid{gap:12px!important}.settings-form-grid label,.settings-field{gap:6px!important}.settings-form-grid label>span,.settings-field>span{font-size:.69rem!important;letter-spacing:.01em!important}

/* ---------- Inputs / selects / color controls ---------- */
.settings-suite .modern-input{
  min-height:43px!important;border-radius:13px!important;padding:9px 12px!important;
  background:color-mix(in srgb,var(--card-surface) 92%,var(--theme-accent-soft))!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 9%,var(--card-border))!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.45)!important;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease!important
}
.settings-suite .modern-input:hover{border-color:color-mix(in srgb,var(--theme-accent) 22%,var(--card-border))!important}
.settings-suite .modern-input:focus{background:var(--card-surface)!important;border-color:var(--theme-accent)!important;box-shadow:0 0 0 4px color-mix(in srgb,var(--theme-accent) 11%,transparent)!important}
.settings-suite input[type="range"]{accent-color:var(--theme-accent)}
.settings-switch span{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--theme-accent) 10%,var(--card-border))}
.settings-switch input:checked+span{background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2))!important}

/* ---------- Buttons ---------- */
.settings-suite .btn-glow-primary{
  border-radius:13px!important;background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2))!important;color:var(--theme-on-accent)!important;
  box-shadow:0 10px 26px color-mix(in srgb,var(--theme-accent) 24%,transparent)!important;border:1px solid color-mix(in srgb,var(--theme-accent) 55%,transparent)!important
}
.settings-suite .btn-glow-primary:hover{transform:translateY(-2px)!important;box-shadow:0 15px 32px color-mix(in srgb,var(--theme-accent) 30%,transparent)!important}
.settings-suite .btn-secondary{border-radius:12px!important;background:color-mix(in srgb,var(--card-surface) 90%,var(--theme-accent-soft))!important;border-color:color-mix(in srgb,var(--theme-accent) 13%,var(--card-border))!important;color:var(--text-primary)!important}
.settings-suite .btn-secondary:hover{border-color:var(--theme-accent-line)!important;color:var(--theme-accent)!important;transform:translateY(-1px)!important}

/* ---------- Theme selector cards ---------- */
.settings-theme-grid{gap:10px!important}
.settings-theme-card{position:relative;overflow:hidden;border-radius:19px!important;padding:10px!important;background:linear-gradient(145deg,var(--card-surface),color-mix(in srgb,var(--card-surface) 94%,var(--theme-accent-soft)))!important;border:1px solid color-mix(in srgb,var(--theme-accent) 8%,var(--card-border))!important;transition:all .22s ease!important}
.settings-theme-card:hover{transform:translateY(-3px)!important;border-color:var(--theme-accent-line)!important;box-shadow:0 18px 38px rgba(15,23,42,.075)!important}
.settings-theme-card.active{border-color:var(--theme-accent)!important;box-shadow:0 0 0 3px var(--theme-accent-soft),0 18px 40px rgba(15,23,42,.08)!important}
.settings-theme-preview{border-radius:14px!important;overflow:hidden!important}
.settings-theme-card>div+div{padding:10px 4px 4px!important}.settings-theme-card strong{font-size:.77rem!important}.settings-theme-card span{font-size:.62rem!important}

/* ---------- Theme Studio: stronger premium treatment ---------- */
.theme-studio-premium{gap:14px!important;margin-top:18px!important}
.theme-studio-hero{
  position:relative;overflow:hidden!important;border-radius:26px!important;padding:24px 26px!important;
  background:linear-gradient(135deg,color-mix(in srgb,var(--card-surface) 93%,var(--theme-accent-soft)),var(--card-surface))!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 13%,var(--card-border))!important;
  box-shadow:0 20px 50px rgba(15,23,42,.07)!important
}
.theme-studio-hero::before{content:"";position:absolute;width:270px;height:270px;border-radius:50%;right:-90px;bottom:-150px;background:radial-gradient(circle,color-mix(in srgb,var(--theme-accent) 18%,transparent),transparent 66%)}
.theme-studio-hero-copy,.theme-studio-live-preview{position:relative;z-index:1}
.theme-studio-hero-copy h3{font-size:1.72rem!important;letter-spacing:-.035em!important}.theme-studio-hero-copy p{font-size:.75rem!important;line-height:1.65!important}
.theme-studio-eyebrow{background:var(--theme-accent-soft)!important;border:1px solid var(--theme-accent-line)!important;color:var(--theme-accent)!important;border-radius:999px!important;padding:6px 10px!important}
.theme-studio-live-preview{border-radius:20px!important;padding:11px!important;background:linear-gradient(145deg,color-mix(in srgb,var(--card-surface) 88%,transparent),color-mix(in srgb,var(--theme-accent-soft) 62%,var(--card-surface)))!important;border:1px solid color-mix(in srgb,var(--theme-accent) 12%,var(--card-border))!important;box-shadow:0 18px 40px rgba(15,23,42,.08)!important}
.theme-studio-preview-app{border-radius:14px!important;overflow:hidden!important}
.theme-studio-tabs{padding:6px!important;border-radius:18px!important;background:color-mix(in srgb,var(--card-surface) 84%,transparent)!important;backdrop-filter:blur(18px)!important;border:1px solid color-mix(in srgb,var(--theme-accent) 10%,var(--card-border))!important;box-shadow:0 12px 30px rgba(15,23,42,.05)!important}
.theme-studio-tab{min-height:54px!important;border-radius:13px!important;transition:all .2s ease!important}
.theme-studio-tab.active{background:linear-gradient(145deg,var(--card-surface),color-mix(in srgb,var(--card-surface) 88%,var(--theme-accent-soft)))!important;border:1px solid var(--theme-accent-line)!important;box-shadow:0 8px 22px rgba(15,23,42,.055)!important}
.theme-studio-tab.active>span{background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2))!important;color:var(--theme-on-accent)!important}
.theme-studio-editor-layout{gap:12px!important}
.theme-studio-editor-card,.theme-studio-library-card{border-radius:22px!important;padding:19px!important;background:linear-gradient(150deg,var(--card-surface),color-mix(in srgb,var(--card-surface) 95%,var(--theme-accent-soft)))!important}
.theme-studio-card-heading{padding-bottom:13px!important;margin-bottom:14px!important;border-bottom:1px solid color-mix(in srgb,var(--theme-accent) 8%,var(--card-border))!important}
.theme-studio-step{background:linear-gradient(135deg,var(--theme-accent),var(--theme-accent-2))!important;color:var(--theme-on-accent)!important;border:none!important;box-shadow:0 8px 20px color-mix(in srgb,var(--theme-accent) 20%,transparent)!important}
.theme-studio-chip{background:var(--theme-accent-soft)!important;border-color:var(--theme-accent-line)!important;color:var(--theme-accent)!important}
.theme-studio-color-grid>label,.theme-studio-font-block,.theme-studio-theme-grid>label{background:color-mix(in srgb,var(--card-surface) 93%,var(--theme-accent-soft))!important;border:1px solid color-mix(in srgb,var(--theme-accent) 8%,var(--card-border))!important}
.theme-studio-color-grid>label:hover,.theme-studio-font-block:hover,.theme-studio-theme-grid>label:hover{border-color:var(--theme-accent-line)!important;box-shadow:0 10px 26px rgba(15,23,42,.045)!important}
.theme-studio-color-control input[type=color],.theme-color-field input[type=color]{border-radius:10px!important;cursor:pointer!important;box-shadow:0 5px 12px rgba(15,23,42,.05)!important}
.theme-studio-library-card{position:sticky!important;top:136px!important}
.theme-studio-swatch-preview{height:92px!important;border-radius:17px!important;box-shadow:0 15px 30px rgba(15,23,42,.07)!important}
.custom-library-list{display:flex;flex-direction:column;gap:8px!important}
.custom-library-list:empty::before{content:"Aucun preset enregistré pour le moment";display:flex;align-items:center;justify-content:center;min-height:80px;padding:14px;border:1px dashed color-mix(in srgb,var(--theme-accent) 18%,var(--card-border));border-radius:14px;color:var(--text-muted);font-size:.66rem;background:color-mix(in srgb,var(--card-surface) 95%,var(--theme-accent-soft))}
.theme-studio-type-preview{border:1px solid color-mix(in srgb,var(--theme-accent) 10%,var(--card-border))!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.5),0 14px 32px rgba(15,23,42,.05)!important}
.theme-studio-mini-dashboard{border-radius:17px!important;box-shadow:0 16px 36px rgba(15,23,42,.07)!important}

/* ---------- Appearance navigation cover manager ---------- */
.settings-nav-cover-manager{padding:18px!important;background:linear-gradient(145deg,var(--card-surface),color-mix(in srgb,var(--card-surface) 95%,var(--theme-accent-soft)))!important}
.settings-nav-cover-grid{gap:10px!important}
.settings-nav-cover-item{border-radius:16px!important;background:color-mix(in srgb,var(--card-surface) 93%,var(--theme-accent-soft))!important;border-color:color-mix(in srgb,var(--theme-accent) 8%,var(--card-border))!important;transition:all .2s ease!important}
.settings-nav-cover-item:hover{transform:translateY(-2px);border-color:var(--theme-accent-line)!important;box-shadow:0 13px 28px rgba(15,23,42,.05)!important}
.settings-nav-cover-preview{border-radius:12px!important;box-shadow:0 9px 22px rgba(15,23,42,.09)!important}

/* ---------- Obsidian hardening ---------- */
[data-theme="obsidian"] .settings-panel.active,[data-theme="obsidian"] .settings-hero,[data-theme="obsidian"] .theme-studio-hero,[data-theme="obsidian"] .theme-studio-editor-card,[data-theme="obsidian"] .theme-studio-library-card{background:linear-gradient(145deg,rgba(17,24,39,.96),rgba(25,34,50,.96))!important;border-color:rgba(255,255,255,.11)!important}
[data-theme="obsidian"] .settings-nav{background:rgba(12,18,29,.84)!important;border-color:rgba(255,255,255,.1)!important}
[data-theme="obsidian"] .settings-overview-card,[data-theme="obsidian"] .settings-suite .spotlight-card:not(.settings-hero):not(.settings-nav):not(.settings-overview-card){background:linear-gradient(145deg,rgba(17,24,39,.96),rgba(25,34,50,.92))!important;border-color:rgba(255,255,255,.1)!important}
[data-theme="obsidian"] .settings-suite .modern-input{background:rgba(8,14,24,.72)!important;border-color:rgba(255,255,255,.12)!important;color:#edf4ff!important;box-shadow:none!important}
[data-theme="obsidian"] .settings-suite .modern-input::placeholder{color:rgba(230,238,250,.46)!important}
[data-theme="obsidian"] .theme-studio-tabs{background:rgba(12,18,29,.82)!important;border-color:rgba(255,255,255,.1)!important}
[data-theme="obsidian"] .theme-studio-tab.active{background:rgba(25,34,50,.96)!important;border-color:rgba(255,255,255,.13)!important}

/* ---------- Responsive ---------- */
@media(max-width:1180px){
  .settings-health-orbit{width:160px!important;min-width:160px!important;height:160px!important}
  .settings-studio-grid{grid-template-columns:1fr!important}.settings-profile-card{min-height:auto!important}
  .theme-studio-library-card{position:static!important}
}
@media(max-width:820px){
  .settings-panel.active{padding:17px!important;border-radius:22px!important}.settings-hero{padding:24px!important;border-radius:24px!important}
  .settings-hero-copy .page-title{font-size:1.72rem!important}.settings-health-orbit{align-self:center!important}
  .settings-nav{position:relative!important;top:auto!important;border-radius:16px!important}
  .settings-section-head{align-items:flex-start!important;flex-direction:column!important}
}
@media(max-width:560px){
  .settings-hero{padding:19px!important}.settings-panel.active{padding:13px!important}.settings-overview-card{min-height:96px!important}
  .theme-studio-hero{padding:18px!important}.theme-studio-editor-card,.theme-studio-library-card{padding:14px!important}
}

/* V14.25 — Intro vidéo supprimée. Ouverture directe vers l’application. */

/* ========================================================================== */
/* D&A NEXUS V14.7 — MOBILE RESPONSIVE SYSTEM                                */
/* Desktop rules remain untouched; everything below only applies <= 980px.   */
/* ========================================================================== */
.mobile-nav-toggle,.mobile-nav-close,.mobile-sidebar-backdrop{display:none}

@media(max-width:980px){
  html,body{width:100%;max-width:100%;min-height:100%;overflow-x:hidden}
  body{display:block;min-height:100dvh}
  body.mobile-nav-open{overflow:hidden!important;touch-action:none}
  .ambient-glow{width:340px;height:340px;filter:blur(100px);opacity:.1}
  .glow-1{left:-140px}.glow-2{right:-140px}

  /* Mobile drawer */
  .sidebar-titanium{
    position:fixed!important;inset:0 auto 0 0!important;top:0!important;
    width:min(86vw,340px)!important;height:100dvh!important;max-height:100dvh!important;
    transform:translate3d(-103%,0,0);transition:transform .34s cubic-bezier(.22,.61,.36,1),box-shadow .34s ease!important;
    z-index:900!important;overflow:hidden!important;box-shadow:none!important;
  }
  .sidebar-titanium.mobile-open{transform:translate3d(0,0,0)!important;box-shadow:28px 0 80px rgba(15,23,42,.22)!important}
  .sidebar-inner{padding:18px 14px max(16px,env(safe-area-inset-bottom))!important;overflow:hidden!important}
  .sidebar-brand-block{position:relative;margin-bottom:18px!important;padding-right:46px!important}
  .sidebar-nav-scroll{overflow-y:auto!important;overscroll-behavior:contain;padding-right:2px!important;-webkit-overflow-scrolling:touch}
  .sidebar-titanium-footer{flex:0 0 auto;padding-top:12px!important}
  .mobile-nav-close{display:grid;place-items:center;position:absolute;right:0;top:0;width:38px;height:38px;border-radius:13px;border:1px solid var(--card-border);background:color-mix(in srgb,var(--card-surface) 88%,transparent);color:var(--text-primary);box-shadow:var(--shadow-soft);cursor:pointer}
  .mobile-sidebar-backdrop{display:block;position:fixed;inset:0;border:0;background:rgba(11,18,32,.36);backdrop-filter:blur(3px);-webkit-backdrop-filter:blur(3px);opacity:0;visibility:hidden;pointer-events:none;z-index:850;transition:opacity .28s ease,visibility .28s ease}
  .mobile-sidebar-backdrop.active{opacity:1;visibility:visible;pointer-events:auto}

  /* Main shell */
  .viewport-main{width:100%!important;max-width:none!important;min-width:0!important;margin:0!important;padding:10px 14px calc(34px + env(safe-area-inset-bottom))!important;overflow:visible!important}
  .topbar-glass{
    width:100%!important;min-width:0!important;top:0!important;margin:0 0 16px!important;padding:8px 0 10px!important;
    display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:8px!important;
    background:color-mix(in srgb,var(--bg-app) 86%,transparent)!important;
    backdrop-filter:blur(22px)!important;-webkit-backdrop-filter:blur(22px)!important;
  }
  .mobile-nav-toggle{display:grid;place-items:center;width:42px;height:42px;border-radius:14px;border:1px solid var(--card-border);background:var(--card-surface);color:var(--text-primary);box-shadow:var(--shadow-soft);cursor:pointer}
  .search-trigger-pill{min-width:0!important;max-width:none!important;height:42px!important;padding:9px 12px!important;gap:8px!important;overflow:hidden!important}
  .search-trigger-pill span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.76rem!important}
  .keyboard-combo{display:none!important}
  .topbar-right-actions{min-width:0!important;gap:6px!important}
  .topbar-right-actions .action-pill-btn{width:42px!important;height:42px!important;min-width:42px!important;padding:0!important;justify-content:center!important;border-radius:14px!important}
  .topbar-right-actions .action-pill-btn>span{display:none!important}
  .notification-badge{position:absolute!important;top:-5px!important;right:-5px!important}
  .notification-popover{position:fixed!important;top:64px!important;left:10px!important;right:10px!important;width:auto!important;max-width:none!important;max-height:calc(100dvh - 80px)!important;overflow:auto!important}

  /* Global flow & cards */
  .nexus-view,.bento-section,.spotlight-card,.section-title-bar{min-width:0!important;max-width:100%!important}
  .nexus-view{overflow:visible!important}
  .bento-section{margin-bottom:18px!important}
  .section-title-bar{gap:8px!important;flex-wrap:wrap!important;align-items:flex-start!important}
  .page-title{font-size:clamp(1.22rem,5vw,1.55rem)!important;line-height:1.15!important}
  .page-subtitle{font-size:.76rem!important;line-height:1.5!important}
  .spotlight-card{padding:15px!important;border-radius:18px!important;overflow:hidden!important}
  .card-title-row{gap:8px!important;flex-wrap:wrap!important;align-items:flex-start!important}
  button,input,select,textarea{max-width:100%}
  input,select,textarea{font-size:16px!important} /* évite le zoom automatique iOS */
  .form-row,.editor-selectors-grid,.proj-kpi-grid,.cc-detail-grid{grid-template-columns:1fr!important}

  /* Dashboard */
  .gallery-spotlight-bento{display:flex!important;grid-template-columns:none!important;gap:10px!important;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:x mandatory;padding:2px 2px 10px!important;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .gallery-spotlight-bento::-webkit-scrollbar{display:none}
  .gallery-spotlight-bento>.gallery-item-shell{flex:0 0 min(76vw,300px)!important;min-width:0!important;scroll-snap-align:start}
  .gallery-item-shell,.gallery-tile{width:100%!important;min-width:0!important}
  .gallery-tile{aspect-ratio:16/9!important;height:auto!important;border-radius:16px!important;overflow:hidden!important}
  .gallery-tile img{width:100%!important;height:100%!important;object-fit:cover!important}
  .gallery-edit-btn{width:100%!important;min-height:38px!important;margin-top:6px!important;justify-content:center!important}
  .today-bento-grid,.metrics-bento-grid,.blueprints-bento-grid,.dual-analytics-grid{grid-template-columns:1fr!important;gap:10px!important}
  .digital-time-big{font-size:clamp(2.2rem,13vw,4rem)!important}
  .blueprint-card-modern{min-height:155px!important}

  /* Documentation / projects / CRM */
  .doc-tri-layout-grid{grid-template-columns:1fr!important}
  .studio-projects-grid{grid-template-columns:1fr!important}
  .cb-kpis-banner-grid,.cb-pipeline-columns-grid,.cb-middle-layout-grid,.cb-analytics-tri-grid,.cb-analytics-kpi-subgrid{grid-template-columns:1fr!important}
  .cb-pipeline-columns-grid{overflow:visible!important}

  /* Content & creation: weekly/kanban stay swipeable rather than crushed */
  .cc-weekly-grid,.cc-production-kanban-grid,.life-week-grid{display:flex!important;grid-template-columns:none!important;overflow-x:auto!important;gap:10px!important;padding-bottom:9px!important;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
  .cc-weekly-grid>*{flex:0 0 min(78vw,290px)!important;scroll-snap-align:start}
  .cc-production-kanban-grid>*{flex:0 0 min(82vw,310px)!important;scroll-snap-align:start}
  .life-week-grid>*{flex:0 0 min(72vw,270px)!important;scroll-snap-align:start}
  .cc-tools-sub-row,.cc-dual-section-grid,.cc-perf-kpis-grid,.cc-resources-bottom-grid,.life-kpis-grid,#life-reminders-grid,#life-travels-grid,#life-quicklists-grid{grid-template-columns:1fr!important}

  /* Accounting */
  .acct-kpi-grid,.acct-primary-grid,.acct-summary-grid,.acct-chart-grid,.acct-due-grid,.acct-side-stack,.acct-goals-list,.acct-annual-layout,.acct-form-grid,.acct-forecast-card,.acct-savings-card,.acct-period-controls,.acct-hero-actions{grid-template-columns:1fr!important}
  .acct-donut-card{grid-template-columns:1fr!important}
  .acct-forecast-lines{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .acct-recurring-row{grid-template-columns:1fr!important}

  /* Wellness */
  .wellness-suite .well-balance-grid,.wellness-suite .well-main-split,.wellness-suite .well-routine-vision-split,.wellness-suite .well-routine-grid,.wellness-suite .well-vision-grid,.wellness-suite .well-victories-grid,.wellness-suite .well-review-grid,.wellness-suite .well-form-grid,.wellness-suite .well-monthly-kpis,.wellness-suite .well-inspirations-grid{grid-template-columns:1fr!important}
  .wellness-suite .well-monthly-days{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .wellness-suite .well-routine-card{grid-template-columns:1fr!important}

  /* Portal */
  .portal-contact-grid,.portal-progress-panel,.portal-project-meta-table,.portal-two-col,.portal-workflow-grid,.portal-deliverables-summary,.portal-delivery-section,.portal-final-delivery,.portal-form-grid{grid-template-columns:1fr!important}
  .portal-final-files{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .portal-calendar-grid{grid-template-columns:repeat(7,minmax(34px,1fr))!important;min-width:330px}
  .portal-reply-box{grid-template-columns:1fr!important}
  .portal-chat-window{position:fixed!important;left:8px!important;right:8px!important;bottom:8px!important;top:auto!important;width:auto!important;max-width:none!important;height:min(78dvh,680px)!important;border-radius:20px!important}
  .portal-chat-compose{grid-template-columns:1fr auto!important;gap:7px!important}
  .portal-chat-compose>*:nth-child(3){grid-column:2}
  .nexus-client-session .viewport-main{padding:10px 10px calc(28px + env(safe-area-inset-bottom))!important}
  .nexus-client-session .portal-client-session-header{top:6px!important;gap:8px!important;padding:10px!important;border-radius:15px!important;flex-wrap:wrap!important}
  .nexus-client-session .mobile-nav-toggle,.nexus-client-session .mobile-sidebar-backdrop{display:none!important}

  /* Settings / Theme Studio */
  .settings-overview-grid,.settings-studio-grid,.settings-form-grid,.settings-theme-grid,.settings-theme-grid-4,.settings-two-col,.settings-three-col,.settings-data-grid,.settings-system-info,.settings-palette-grid,.settings-font-grid,.settings-nav-cover-grid,.settings-theme-studio-grid,.notification-toggle-grid-v14{grid-template-columns:1fr!important}
  .settings-panel.active{min-width:0!important}
  .settings-hero{padding:18px!important;border-radius:20px!important}
  .settings-hero-actions{width:100%!important;flex-wrap:wrap!important}
  .settings-toggle-row,.settings-automation-row,.settings-data-card{grid-template-columns:42px minmax(0,1fr)!important}
  .settings-toggle-row>*:last-child,.settings-automation-row>*:nth-child(n+3),.settings-data-card>*:last-child{grid-column:1/-1!important;justify-self:stretch!important}
  .theme-studio-hero,.theme-studio-editor-layout,.theme-studio-font-fields,.theme-studio-color-grid,.theme-studio-theme-grid,.theme-studio-associations,.theme-studio-tabs{grid-template-columns:1fr!important}
  .theme-studio-library-card{position:static!important;top:auto!important}
  .theme-studio-hero{padding:18px!important;border-radius:21px!important}
  .theme-studio-live-preview{min-width:0!important}
  .settings-live-preview{grid-template-columns:58px minmax(0,1fr)!important;height:185px!important}

  /* Tables and wide content: horizontal swipe inside itself, never page overflow */
  .nexus-view table{display:block!important;width:100%!important;max-width:100%!important;overflow-x:auto!important;-webkit-overflow-scrolling:touch;scrollbar-width:thin}
  .nexus-view table thead,.nexus-view table tbody{min-width:680px}
  .nexus-view svg,.nexus-view canvas,.nexus-view img{max-width:100%}
  .universal-modal-card,.modal-card,.palette-modal-card{width:min(94vw,680px)!important;max-width:94vw!important;max-height:88dvh!important;overflow:auto!important;margin:auto!important}

  /* Safari safe areas */
  .topbar-glass{padding-top:max(8px,env(safe-area-inset-top))!important}
}

@media(max-width:620px){
  .viewport-main{padding-left:10px!important;padding-right:10px!important}
  .topbar-glass{grid-template-columns:auto minmax(0,1fr) auto!important;gap:6px!important}
  .search-trigger-pill span{font-size:.71rem!important}
  #btn-top-calendar{display:none!important}
  .topbar-right-actions{gap:5px!important}
  .topbar-right-actions .action-pill-btn{width:40px!important;height:40px!important;min-width:40px!important}
  .mobile-nav-toggle{width:40px;height:40px;border-radius:13px}
  .spotlight-card{padding:13px!important;border-radius:16px!important}
  .section-heading-tag,.eyebrow{font-size:.64rem!important}
  .metrics-bento-grid{grid-template-columns:1fr 1fr!important}
  .metric-pill-card{padding:12px!important}
  .metric-head{align-items:flex-start!important;gap:6px!important}.metric-head span{font-size:.69rem!important}.metric-head strong{font-size:.86rem!important}
  .portal-final-files{grid-template-columns:1fr 1fr!important}
  .acct-forecast-lines{grid-template-columns:1fr!important}
  .settings-preview-cards{grid-template-columns:1fr 1fr!important}
  .theme-studio-preview-app{grid-template-columns:38px 1fr!important}
}

@media(max-width:410px){
  .search-trigger-pill span{max-width:122px}
  .metrics-bento-grid{grid-template-columns:1fr!important}
  .portal-final-files{grid-template-columns:1fr!important}
  .wellness-suite .well-monthly-days{grid-template-columns:1fr!important}
  .auth-shell,.nexus-auth-card{max-width:calc(100vw - 18px)!important}
}

/* ========================================================================== */
/* D&A NEXUS V14.8 — MOBILE PORTAL / SECURE LINK / STICKY NAV / DOWNLOAD FIX */
/* ========================================================================== */

/* Download menu: always rendered above the editor, never clipped by cards. */
.download-dropdown-menu.download-menu-floating{
  position:fixed!important;
  right:auto!important;
  bottom:auto!important;
  z-index:5000!important;
  display:flex!important;
  flex-direction:column!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:10px!important;
  border-radius:18px!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 16%,var(--card-border))!important;
  background:color-mix(in srgb,var(--card-surface) 98%,#fff 2%)!important;
  color:var(--text-primary)!important;
  -webkit-text-fill-color:initial!important;
  box-shadow:0 28px 80px rgba(15,23,42,.24),0 2px 10px rgba(15,23,42,.08)!important;
  backdrop-filter:none!important;
  -webkit-backdrop-filter:none!important;
  isolation:isolate!important;
}
.download-dropdown-menu.download-menu-floating .download-menu-group-label{
  position:sticky;top:-10px;z-index:2;margin:-2px -2px 4px;padding:11px 11px 8px;
  background:inherit;color:var(--text-muted)!important;border-bottom:1px solid var(--card-border);
}
.download-dropdown-menu.download-menu-floating button{
  width:100%!important;min-height:52px!important;margin:1px 0!important;padding:9px 11px!important;
  border:1px solid transparent!important;border-radius:12px!important;background:transparent!important;
  color:var(--text-primary)!important;-webkit-text-fill-color:var(--text-primary)!important;
  cursor:pointer!important;pointer-events:auto!important;
}
.download-dropdown-menu.download-menu-floating button span{color:var(--text-primary)!important;-webkit-text-fill-color:var(--text-primary)!important;font-size:.78rem!important}
.download-dropdown-menu.download-menu-floating button small{color:var(--text-muted)!important;-webkit-text-fill-color:var(--text-muted)!important;font-size:.67rem!important}
.download-dropdown-menu.download-menu-floating button:hover,
.download-dropdown-menu.download-menu-floating button:focus-visible{
  background:var(--theme-accent-soft)!important;border-color:var(--theme-accent-line)!important;outline:none!important;
}
.download-dropdown-menu.download-menu-floating .download-menu-note{
  background:color-mix(in srgb,var(--theme-accent-soft) 70%,var(--card-surface))!important;
  color:var(--text-muted)!important;-webkit-text-fill-color:var(--text-muted)!important;
}
[data-theme="obsidian"] .download-dropdown-menu.download-menu-floating{
  background:#111a29!important;border-color:rgba(158,177,211,.22)!important;color:#f4f7fb!important;
}
[data-theme="obsidian"] .download-dropdown-menu.download-menu-floating button span{color:#f4f7fb!important;-webkit-text-fill-color:#f4f7fb!important}
[data-theme="obsidian"] .download-dropdown-menu.download-menu-floating button small,
[data-theme="obsidian"] .download-dropdown-menu.download-menu-floating .download-menu-note{color:#aebbd0!important;-webkit-text-fill-color:#aebbd0!important}

@media(max-width:980px){
  /* The hamburger is now always reachable, regardless of page scroll position. */
  .mobile-nav-toggle{
    position:fixed!important;
    top:max(10px,calc(env(safe-area-inset-top) + 8px))!important;
    left:max(10px,env(safe-area-inset-left))!important;
    z-index:980!important;
    box-shadow:0 14px 38px rgba(15,23,42,.18)!important;
    background:color-mix(in srgb,var(--card-surface) 94%,transparent)!important;
    backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;
  }
  .topbar-glass{padding-left:52px!important}
  body.mobile-nav-open .mobile-nav-toggle{opacity:0!important;pointer-events:none!important}

  /* Portal control bar no longer pushes content outside the viewport. */
  .portal-controlbar{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;width:100%!important;min-width:0!important}
  .portal-mode-toggle{width:100%!important;min-width:0!important;display:grid!important;grid-template-columns:1fr 1fr!important}
  .portal-mode-btn{justify-content:center!important;min-width:0!important;padding:10px 8px!important}
  .portal-project-picker{margin:0!important;min-width:0!important;width:100%!important;display:grid!important;grid-template-columns:1fr!important;gap:6px!important;align-items:stretch!important}
  .portal-project-picker label{white-space:normal!important}
  .portal-project-picker .modern-input{width:100%!important;min-width:0!important;max-width:100%!important}
  .portal-sync-status{min-width:0!important;white-space:normal!important}

  /* Secure-link modal: actions stay usable on mobile and do not overflow. */
  .portal-access-modal-card{width:calc(100vw - 16px)!important;max-width:calc(100vw - 16px)!important;max-height:calc(100dvh - 18px)!important;padding:16px!important;border-radius:20px!important}
  .portal-access-status-strip{grid-template-columns:auto minmax(0,1fr)!important;align-items:start!important}
  .portal-access-last-seen{grid-column:2!important;white-space:normal!important}
  .portal-access-form-grid,.portal-access-permission-grid{grid-template-columns:1fr!important}
  .portal-access-permissions-head{align-items:flex-start!important;flex-direction:column!important}
  .portal-access-link-box{align-items:stretch!important;flex-direction:column!important}
  .portal-access-link-box strong{white-space:normal!important;overflow-wrap:anywhere!important;word-break:break-word!important}
  .portal-access-link-box .btn-secondary{width:100%!important;justify-content:center!important}
  .portal-access-actions{
    position:sticky!important;bottom:-16px!important;z-index:4!important;
    display:grid!important;grid-template-columns:1fr!important;gap:8px!important;
    margin:16px -16px -16px!important;padding:12px 16px max(14px,env(safe-area-inset-bottom))!important;
    background:color-mix(in srgb,var(--card-surface) 95%,transparent)!important;
    border-top:1px solid var(--card-border)!important;backdrop-filter:blur(18px)!important;-webkit-backdrop-filter:blur(18px)!important;
  }
  .portal-access-actions-spacer{display:none!important}
  .portal-access-actions button{width:100%!important;min-height:46px!important;justify-content:center!important}

  /* Chat launcher is compact and stops covering project content. */
  .portal-chat-widget{right:10px!important;bottom:calc(76px + env(safe-area-inset-bottom))!important;width:auto!important;max-width:calc(100vw - 20px)!important}
  .portal-chat-launcher{width:54px!important;height:54px!important;min-height:54px!important;padding:6px!important;border-radius:18px!important;justify-content:center!important}
  .portal-chat-launcher-copy{display:none!important}
  .portal-chat-launcher-icon{width:42px!important;height:42px!important;flex:0 0 42px!important}
  .portal-chat-toast{position:fixed!important;left:10px!important;right:10px!important;bottom:calc(140px + env(safe-area-inset-bottom))!important;width:auto!important}
}

@media(max-width:760px){
  /* Client portal deliverables become real cards instead of a cropped desktop table. */
  .portal-delivery-section{overflow:visible!important;min-width:0!important}
  .portal-delivery-section>div:last-child{min-width:0!important;width:100%!important;overflow:visible!important}
  .portal-delivery-cover{min-height:170px!important;border-radius:18px!important;overflow:hidden!important}
  .portal-delivery-cover-copy{padding:14px!important}
  .portal-delivery-cover-copy h4{font-size:1rem!important;line-height:1.18!important}
  .portal-delivery-cover-copy p{font-size:.76rem!important;line-height:1.4!important;white-space:normal!important}

  .portal-delivery-table,
  .portal-task-table{display:block!important;width:100%!important;max-width:100%!important;overflow:visible!important;background:transparent!important;border:0!important}
  .portal-delivery-table thead,
  .portal-task-table thead{display:none!important}
  .portal-delivery-table tbody,
  .portal-task-table tbody{display:grid!important;grid-template-columns:1fr!important;gap:10px!important;min-width:0!important;width:100%!important;padding:10px 0!important}
  .portal-delivery-table tr,
  .portal-task-table tr{
    display:grid!important;grid-template-columns:1fr!important;gap:0!important;width:100%!important;min-width:0!important;
    padding:12px 13px!important;border:1px solid var(--card-border)!important;border-radius:15px!important;
    background:color-mix(in srgb,var(--card-surface) 96%,var(--theme-accent-soft))!important;
    box-shadow:0 8px 24px rgba(15,23,42,.045)!important;
  }
  .portal-delivery-table td,
  .portal-task-table td{
    display:grid!important;grid-template-columns:88px minmax(0,1fr)!important;align-items:start!important;gap:10px!important;
    width:100%!important;min-width:0!important;max-width:100%!important;padding:8px 0!important;border:0!important;
    color:var(--text-primary)!important;white-space:normal!important;overflow:visible!important;text-overflow:clip!important;word-break:break-word!important;
  }
  .portal-delivery-table td+td,
  .portal-task-table td+td{border-top:1px solid color-mix(in srgb,var(--card-border) 80%,transparent)!important}
  .portal-delivery-table td::before,
  .portal-task-table td::before{
    content:attr(data-label);font-size:.61rem;font-weight:900;letter-spacing:.07em;text-transform:uppercase;color:var(--text-muted);padding-top:3px;
  }
  .portal-doc-title{min-width:0!important;white-space:normal!important;overflow-wrap:anywhere!important}
  .portal-doc-inline-input,.portal-task-name-input{min-width:0!important;width:100%!important}
  .portal-doc-status-select,.portal-task-status-select,.portal-task-table input[type="date"],.portal-task-table select{
    width:100%!important;min-width:0!important;max-width:100%!important;opacity:1!important;color:var(--text-primary)!important;-webkit-text-fill-color:var(--text-primary)!important;
  }
  .portal-doc-actions{justify-content:flex-start!important;flex-wrap:wrap!important;gap:7px!important}
  .portal-doc-action{width:40px!important;height:40px!important;min-width:40px!important;border-radius:12px!important}
  .portal-task-status-wrap{min-width:0!important;width:100%!important}

  .download-dropdown-menu.download-menu-floating{width:calc(100vw - 20px)!important;left:10px!important;right:auto!important;border-radius:18px!important}
  .download-dropdown-menu.download-menu-floating button{min-height:56px!important;grid-template-columns:58px minmax(0,1fr)!important}
}

@media(max-width:430px){
  .portal-delivery-table td,.portal-task-table td{grid-template-columns:78px minmax(0,1fr)!important;gap:8px!important}
  .portal-access-modal-head{gap:10px!important}
  .portal-access-modal-head h3{font-size:1.08rem!important}
  .portal-access-security-note{padding:11px!important}
}

/* ========================================================================== */
/* D&A NEXUS V14.9 — GLOBAL MOBILE NAV + DOWNLOAD UX FIX                     */
/* ========================================================================== */

/* Desktop : menu réellement ancré sous le bouton. L'ancien `inset:auto`
   de V14.8 annulait les coordonnées calculées et envoyait le menu à gauche. */
.download-dropdown-menu.download-menu-floating.download-menu-desktop{
  position:fixed!important;
  right:auto!important;
  bottom:auto!important;
  z-index:7200!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  background:var(--card-surface)!important;
  color:var(--text-primary)!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 18%,var(--card-border))!important;
  border-radius:18px!important;
  box-shadow:0 26px 70px rgba(15,23,42,.22),0 4px 16px rgba(15,23,42,.08)!important;
  opacity:1!important;
  visibility:visible!important;
  transform:none!important;
}
.download-dropdown-menu.download-menu-floating.download-menu-desktop button{
  flex:0 0 auto!important;
  pointer-events:auto!important;
}

/* Fond uniquement utilisé par la bottom sheet mobile. */
.download-menu-backdrop{
  display:none;
  position:fixed;
  inset:0;
  z-index:7180;
  border:0;
  padding:0;
  margin:0;
  background:rgba(10,17,29,.34);
  backdrop-filter:blur(5px);
  -webkit-backdrop-filter:blur(5px);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .2s ease,visibility .2s ease;
}
.download-menu-backdrop.active{opacity:1;visibility:visible;pointer-events:auto}
body.download-sheet-open{overflow:hidden!important;touch-action:none!important}
@media(max-width:980px){body.download-sheet-open .mobile-nav-toggle-global{opacity:0!important;visibility:hidden!important;pointer-events:none!important}}

@media(max-width:980px){
  /* Le hamburger est volontairement hors du header sticky dans le HTML V14.9.
     Il reste donc visible même après un long scroll. */
  .mobile-nav-toggle-global{
    display:grid!important;
    place-items:center!important;
    position:fixed!important;
    top:max(10px,calc(env(safe-area-inset-top) + 8px))!important;
    left:max(10px,calc(env(safe-area-inset-left) + 2px))!important;
    width:44px!important;
    height:44px!important;
    min-width:44px!important;
    min-height:44px!important;
    z-index:7600!important;
    border-radius:14px!important;
    border:1px solid var(--card-border)!important;
    background:color-mix(in srgb,var(--card-surface) 96%,transparent)!important;
    color:var(--text-primary)!important;
    box-shadow:0 14px 38px rgba(15,23,42,.18)!important;
    backdrop-filter:blur(18px)!important;
    -webkit-backdrop-filter:blur(18px)!important;
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    transform:none!important;
  }
  body.mobile-nav-open .mobile-nav-toggle-global{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
  }
  .nexus-client-session .mobile-nav-toggle-global{display:none!important}

  /* Le header n'a plus besoin de réserver une colonne au bouton hamburger. */
  .topbar-glass{
    grid-template-columns:minmax(0,1fr) auto!important;
    padding-left:56px!important;
  }

  /* Bottom sheet tactile : aucun positionnement dépendant du bouton/scroll. */
  .download-menu-backdrop{display:block}
  .download-dropdown-menu.download-menu-floating.download-menu-mobile-sheet{
    position:fixed!important;
    left:max(10px,env(safe-area-inset-left))!important;
    right:max(10px,env(safe-area-inset-right))!important;
    top:auto!important;
    bottom:max(10px,calc(env(safe-area-inset-bottom) + 8px))!important;
    width:auto!important;
    max-width:none!important;
    max-height:min(72dvh,640px)!important;
    z-index:7200!important;
    display:flex!important;
    flex-direction:column!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;
    padding:10px 10px max(12px,env(safe-area-inset-bottom))!important;
    border-radius:24px!important;
    border:1px solid color-mix(in srgb,var(--theme-accent) 18%,var(--card-border))!important;
    background:color-mix(in srgb,var(--card-surface) 99%,#fff 1%)!important;
    color:var(--text-primary)!important;
    box-shadow:0 30px 90px rgba(15,23,42,.30)!important;
    opacity:1!important;
    visibility:visible!important;
    transform:none!important;
  }
  .download-dropdown-menu.download-menu-mobile-sheet::before{
    content:'';
    display:block;
    flex:0 0 auto;
    width:42px;
    height:4px;
    margin:1px auto 7px;
    border-radius:999px;
    background:color-mix(in srgb,var(--text-muted) 35%,transparent);
  }
  .download-dropdown-menu.download-menu-mobile-sheet .download-menu-group-label{
    position:sticky!important;
    top:-10px!important;
    z-index:3!important;
    padding:10px 12px!important;
    margin:0 0 5px!important;
    background:var(--card-surface)!important;
    color:var(--text-muted)!important;
    border-bottom:1px solid var(--card-border)!important;
  }
  .download-dropdown-menu.download-menu-mobile-sheet button{
    display:grid!important;
    grid-template-columns:64px minmax(0,1fr)!important;
    align-items:center!important;
    gap:10px!important;
    width:100%!important;
    min-height:58px!important;
    margin:2px 0!important;
    padding:11px 13px!important;
    border-radius:14px!important;
    border:1px solid transparent!important;
    background:transparent!important;
    color:var(--text-primary)!important;
    text-align:left!important;
    pointer-events:auto!important;
    touch-action:manipulation!important;
  }
  .download-dropdown-menu.download-menu-mobile-sheet button:active{
    background:var(--theme-accent-soft)!important;
    border-color:var(--theme-accent-line)!important;
    transform:scale(.992);
  }
  .download-dropdown-menu.download-menu-mobile-sheet button span{
    font-size:.9rem!important;
    font-weight:850!important;
    color:var(--text-primary)!important;
    -webkit-text-fill-color:var(--text-primary)!important;
  }
  .download-dropdown-menu.download-menu-mobile-sheet button small{
    font-size:.76rem!important;
    color:var(--text-muted)!important;
    -webkit-text-fill-color:var(--text-muted)!important;
  }
  .download-dropdown-menu.download-menu-mobile-sheet .download-menu-note{
    margin-top:8px!important;
    padding:12px!important;
    border-radius:14px!important;
    font-size:.72rem!important;
    line-height:1.5!important;
  }

  /* Documents : actions plus propres et sans dépassement sur téléphone. */
  #view-documentation .editor-actions-row{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
    gap:8px!important;
    width:100%!important;
  }
  #view-documentation .download-dropdown-wrap{
    grid-column:1/-1!important;
    width:100%!important;
  }
  #view-documentation #btn-download-menu-toggle{
    width:100%!important;
    min-height:46px!important;
    justify-content:center!important;
  }
  #view-documentation #btn-duplicate-doc,
  #view-documentation #btn-delete-doc{
    width:100%!important;
    min-width:0!important;
    min-height:44px!important;
    justify-content:center!important;
  }
  #view-documentation .editor-header-meta{min-width:0!important}
  #view-documentation .editor-title-field{width:100%!important;min-width:0!important}
}

@media(max-width:620px){
  .topbar-glass{grid-template-columns:minmax(0,1fr) auto!important;padding-left:54px!important}
  .mobile-nav-toggle-global{width:42px!important;height:42px!important;min-width:42px!important;min-height:42px!important}
}

[data-theme="obsidian"] .download-dropdown-menu.download-menu-mobile-sheet,
[data-theme="obsidian"] .download-dropdown-menu.download-menu-desktop{
  background:#111a29!important;
  border-color:rgba(158,177,211,.24)!important;
}

/* ========================================================================== */
/* D&A NEXUS V14.10 — MOBILE PORTAL OVERFLOW & DELIVERABLES LAYOUT FIX       */
/* ========================================================================== */

@media (max-width: 980px){
  /* Prevent any portal child from forcing the whole iPhone canvas wider. */
  html,body{max-width:100%;overflow-x:hidden!important}
  .viewport-main,.nexus-view,#view-client-portal,
  #view-client-portal .bento-section,#view-client-portal .spotlight-card,
  #view-client-portal .portal-panel,#view-client-portal .portal-panel-head,
  #view-client-portal .portal-title-with-icon,#view-client-portal .portal-deliverables-actions,
  #view-client-portal .portal-deliverables-summary,#view-client-portal .portal-deliverables-list{
    min-width:0!important;max-width:100%!important;box-sizing:border-box!important;
  }

  /* The workflow legend used to extend underneath/outside the fixed hamburger. */
  #view-client-portal .portal-workflow-legend{
    width:100%!important;max-width:100%!important;
    display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:9px 12px!important;overflow:hidden!important;
  }
  #view-client-portal .portal-workflow-legend span{
    min-width:0!important;white-space:normal!important;line-height:1.25!important;
  }

  /* Deliverables header: title first, controls in their own row below. */
  #view-client-portal .portal-deliverables-head{
    display:flex!important;flex-direction:column!important;align-items:stretch!important;
    justify-content:flex-start!important;gap:16px!important;width:100%!important;
    overflow:hidden!important;
  }
  #view-client-portal .portal-deliverables-head>.portal-title-with-icon{
    width:100%!important;max-width:100%!important;align-items:flex-start!important;
    display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;gap:12px!important;
  }
  #view-client-portal .portal-deliverables-head>.portal-title-with-icon>div{
    min-width:0!important;width:100%!important;max-width:100%!important;
  }
  #view-client-portal .portal-deliverables-head h3,
  #view-client-portal .portal-deliverables-head p{
    width:100%!important;max-width:100%!important;white-space:normal!important;
    overflow-wrap:anywhere!important;word-break:normal!important;
  }
  #view-client-portal .portal-deliverables-actions{
    display:grid!important;grid-template-columns:minmax(0,1fr)!important;
    width:100%!important;max-width:100%!important;gap:9px!important;
    align-items:stretch!important;margin:0!important;
  }
  #view-client-portal .portal-deliverables-actions .modern-input,
  #view-client-portal #portal-deliverables-project-select{
    display:block!important;width:100%!important;min-width:0!important;max-width:100%!important;
    margin:0!important;box-sizing:border-box!important;
  }
  #view-client-portal #portal-new-document{
    position:static!important;inset:auto!important;transform:none!important;
    width:100%!important;max-width:100%!important;min-width:0!important;
    min-height:44px!important;margin:0!important;justify-content:center!important;
    border-radius:14px!important;white-space:normal!important;
  }

  /* Summary must not inherit fixed inline widths from desktop progress UI. */
  #view-client-portal .portal-deliverables-summary{
    width:100%!important;overflow:hidden!important;gap:14px!important;
  }
  #view-client-portal .portal-deliverables-summary>div{
    min-width:0!important;max-width:100%!important;width:100%!important;
  }
  #view-client-portal .portal-summary-progress{
    width:calc(100% - 58px)!important;max-width:100%!important;margin:8px 8px 0 0!important;
  }

  /* Floating chat remains completely inside the visual viewport. */
  #view-client-portal .portal-chat-widget{
    right:max(10px,env(safe-area-inset-right))!important;
    left:auto!important;max-width:calc(100vw - 20px - env(safe-area-inset-left) - env(safe-area-inset-right))!important;
  }

  /* Portal content itself never creates a horizontal page scroll. */
  #view-client-portal{overflow-x:hidden!important}
  #view-client-portal .portal-panel,
  #view-client-portal .portal-delivery-section,
  #view-client-portal .portal-delivery-cover,
  #view-client-portal .portal-final-delivery{
    overflow-x:hidden!important;
  }
}

@media (max-width: 560px){
  #view-client-portal .portal-panel{padding-left:18px!important;padding-right:18px!important}
  #view-client-portal .portal-deliverables-head>.portal-title-with-icon{
    grid-template-columns:56px minmax(0,1fr)!important;gap:12px!important;
  }
  #view-client-portal .portal-round-icon{width:50px!important;height:50px!important;min-width:50px!important}
  #view-client-portal .portal-deliverables-head h3{font-size:1.42rem!important;line-height:1.08!important}
  #view-client-portal .portal-deliverables-head p{font-size:.88rem!important;line-height:1.5!important}
  #view-client-portal .portal-workflow-legend{grid-template-columns:1fr 1fr!important;font-size:.72rem!important}
}

@media (max-width: 380px){
  #view-client-portal .portal-workflow-legend{grid-template-columns:1fr!important}
}

/* =========================================================
   V14.11 — DOCUMENTS PAR PROJET / BIBLIOTHÈQUE PERSONNELLE
   ========================================================= */
.project-workspace-modal{
  width:min(920px,calc(100vw - 38px))!important;
  max-height:min(88vh,860px);
  overflow:auto;
}
.project-workspace-kpis{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px;
  padding:12px;
  border:1px solid var(--card-border);
  border-radius:16px;
  background:color-mix(in srgb,var(--card-surface) 92%,transparent);
}
.project-workspace-kpis>div{min-width:0;padding:10px 12px;border-radius:12px;background:color-mix(in srgb,var(--card-surface) 86%,var(--theme-accent-soft));}
.project-workspace-kpis span{display:block;color:var(--text-muted);font-size:.72rem;font-weight:700;margin-bottom:5px;}
.project-workspace-kpis strong{font-size:.95rem;color:var(--text-primary);}
.project-workspace-actions{display:flex;flex-wrap:wrap;gap:9px;align-items:center;}
.project-workspace-actions button{min-height:40px;}
.project-doc-library{border:1px solid var(--card-border);border-radius:18px;padding:16px;background:color-mix(in srgb,var(--card-surface) 94%,transparent);}
.project-doc-library-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:14px;}
.project-doc-library-head h4{margin:3px 0 5px;font-size:1rem;color:var(--text-primary);}
.project-doc-library-head p{margin:0;color:var(--text-muted);font-size:.76rem;line-height:1.5;max-width:570px;}
.project-doc-library-stats{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end;}
.project-doc-library-stats span{border:1px solid var(--card-border);border-radius:999px;padding:7px 10px;background:var(--card-surface);color:var(--text-muted);font-size:.7rem;font-weight:700;white-space:nowrap;}
.project-doc-library-stats b{color:var(--text-primary);}
.project-docs-list{display:flex;flex-direction:column;gap:8px;max-height:360px;overflow:auto;padding-right:3px;}
.project-doc-row{display:grid;grid-template-columns:minmax(240px,1fr) 100px 112px auto;align-items:center;gap:10px;border:1px solid var(--card-border);border-radius:14px;padding:10px 11px;background:var(--card-surface);}
.project-doc-main{display:flex;align-items:center;gap:10px;min-width:0;}
.project-doc-icon{width:34px;height:34px;border-radius:10px;display:grid;place-items:center;flex:0 0 auto;background:var(--theme-accent-soft);color:var(--theme-accent);border:1px solid var(--theme-accent-line);}
.project-doc-main>div{min-width:0;}
.project-doc-main strong{display:block;color:var(--text-primary);font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.project-doc-main span{display:block;color:var(--text-muted);font-size:.66rem;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.project-doc-status{font-size:.68rem;font-weight:800;color:var(--text-muted);}
.project-doc-visibility,.portal-visibility-chip{border:1px solid var(--card-border);border-radius:999px;background:var(--card-surface);display:inline-flex;align-items:center;justify-content:center;gap:5px;font-size:.65rem;font-weight:800;cursor:pointer;min-height:30px;padding:5px 9px;color:var(--text-muted);}
.project-doc-visibility.is-client,.portal-visibility-chip.client{background:color-mix(in srgb,#10b981 11%,var(--card-surface));border-color:color-mix(in srgb,#10b981 32%,var(--card-border));color:#0d8f69;}
.project-doc-visibility.is-internal,.portal-visibility-chip.internal{background:color-mix(in srgb,#64748b 10%,var(--card-surface));color:var(--text-muted);}
.project-doc-actions{display:flex;gap:5px;justify-content:flex-end;}
.project-doc-empty{display:flex;flex-direction:column;align-items:center;text-align:center;padding:28px 16px;color:var(--text-muted);gap:6px;border:1px dashed var(--card-border);border-radius:14px;}
.project-doc-empty strong{color:var(--text-primary);font-size:.8rem;}
.project-doc-empty span{font-size:.7rem;}
.proj-docs-meta{display:flex;align-items:center;justify-content:space-between;gap:8px;margin:2px 0 12px;padding:8px 10px;border:1px solid var(--card-border);border-radius:12px;background:color-mix(in srgb,var(--card-surface) 90%,var(--theme-accent-soft));cursor:pointer;color:var(--text-muted);font-size:.68rem;font-weight:700;}
.proj-docs-meta>span{display:flex;align-items:center;gap:5px;min-width:0;}
.proj-docs-meta strong{color:var(--text-primary);}
.proj-docs-client{color:color-mix(in srgb,var(--theme-accent) 80%,var(--text-muted));}
.portal-doc-title-owner{flex-wrap:wrap;}
.portal-doc-title-owner .portal-doc-inline-input{flex:1 1 150px;min-width:0;}
.portal-visibility-chip{flex:0 0 auto;min-height:27px;padding:4px 8px;}

#view-documentation .doc-view-header .page-subtitle{max-width:820px;}

@media(max-width:980px){
  .project-workspace-modal{width:calc(100vw - 20px)!important;max-height:calc(100dvh - 28px);padding:14px!important;}
  .project-workspace-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}
  .project-workspace-actions{display:grid;grid-template-columns:1fr 1fr;}
  .project-workspace-actions .btn-glow-primary{grid-column:1/-1;order:-1;}
  .project-doc-library{padding:12px;}
  .project-doc-library-head{align-items:flex-start;flex-direction:column;}
  .project-doc-library-stats{justify-content:flex-start;}
  .project-docs-list{max-height:48vh;}
  .project-doc-row{grid-template-columns:minmax(0,1fr) auto;gap:8px 10px;}
  .project-doc-main{grid-column:1/-1;}
  .project-doc-status{grid-column:1;}
  .project-doc-visibility{grid-column:2;justify-self:end;}
  .project-doc-actions{grid-column:1/-1;justify-content:flex-start;}
  .project-doc-actions .portal-doc-action{width:38px;height:36px;}
  .proj-docs-meta{flex-wrap:wrap;}
  .portal-doc-title-owner{align-items:flex-start;}
  .portal-visibility-chip{margin-top:6px;}
}

/* =========================================================
   V14.12 — PREMIUM NOTIFICATIONS + NEXUS MESSENGER 2.0
   ========================================================= */

/* Click-to-destination feedback */
.nexus-target-pulse{animation:nexusTargetPulse 1.9s cubic-bezier(.16,1,.3,1)!important;position:relative;z-index:3}
@keyframes nexusTargetPulse{0%{box-shadow:0 0 0 0 color-mix(in srgb,var(--theme-accent) 40%,transparent);transform:scale(1)}22%{box-shadow:0 0 0 9px color-mix(in srgb,var(--theme-accent) 12%,transparent);transform:scale(1.012)}100%{box-shadow:0 0 0 0 transparent;transform:scale(1)}}

/* Actionable toast */
.toast-pill.is-actionable{border:1px solid color-mix(in srgb,var(--theme-accent) 24%,var(--card-border));cursor:pointer;text-align:left;color:inherit;font:inherit}
.toast-pill.is-actionable:hover{transform:translateY(-2px)!important;box-shadow:0 16px 38px color-mix(in srgb,var(--theme-accent) 18%,transparent)}
.toast-open-icon{margin-left:auto;opacity:.62}

/* -------- Notification Center 2.0 -------- */
.notification-popover{
  width:min(520px,calc(100vw - 32px))!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 14%,var(--card-border))!important;
  background:color-mix(in srgb,var(--card-surface) 97%,var(--theme-accent-soft))!important;
  box-shadow:0 28px 90px rgba(20,31,50,.20),0 1px 0 rgba(255,255,255,.55) inset!important;
  backdrop-filter:blur(30px) saturate(1.25)!important;
  border-radius:24px!important;
  overflow:hidden!important;
}
.notification-popover-head{padding:18px 18px 10px!important}
.notification-popover-head h3{font-size:1.15rem!important;letter-spacing:-.025em}
.notification-summary{margin:0 18px 12px!important;padding:11px 13px!important;border-radius:14px!important;background:color-mix(in srgb,var(--theme-accent-soft) 62%,transparent)!important;border:1px solid color-mix(in srgb,var(--theme-accent) 10%,transparent)!important;font-size:.68rem!important;line-height:1.45!important;color:var(--text-muted)!important}
.notification-summary strong{color:var(--text-primary)!important}
.notification-filter-bar{display:flex;gap:6px;overflow-x:auto;padding:0 18px 12px;scrollbar-width:none}
.notification-filter-bar::-webkit-scrollbar{display:none}
.notification-filter-bar button{flex:0 0 auto;border:1px solid var(--card-border);background:color-mix(in srgb,var(--card-surface) 88%,transparent);color:var(--text-muted);border-radius:999px;padding:7px 10px;display:inline-flex;align-items:center;gap:5px;font-size:.61rem;font-weight:760;cursor:pointer;transition:.2s ease}
.notification-filter-bar button:hover,.notification-filter-bar button.active{background:var(--theme-accent);border-color:var(--theme-accent);color:var(--theme-on-accent);box-shadow:0 8px 18px color-mix(in srgb,var(--theme-accent) 20%,transparent)}
.notification-list{padding:0 10px 8px!important;max-height:min(54vh,510px)!important;overflow:auto!important}
.notification-item{position:relative!important;width:100%!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;align-items:center!important;gap:11px!important;padding:12px!important;border:0!important;border-radius:16px!important;background:transparent!important;text-align:left!important;color:var(--text-primary)!important;cursor:pointer!important;transition:.18s ease!important}
.notification-item:hover{background:color-mix(in srgb,var(--theme-accent-soft) 68%,transparent)!important;transform:translateX(2px)}
.notification-item.is-unread{background:color-mix(in srgb,var(--theme-accent-soft) 38%,transparent)!important}
.notification-item.is-unread:before{content:"";position:absolute;left:4px;top:50%;width:5px;height:5px;border-radius:50%;background:var(--theme-accent);transform:translateY(-50%);box-shadow:0 0 0 4px color-mix(in srgb,var(--theme-accent) 10%,transparent)}
.notification-icon{width:38px!important;height:38px!important;border-radius:13px!important;display:grid!important;place-items:center!important;background:color-mix(in srgb,var(--theme-accent) 10%,var(--card-surface))!important;color:var(--theme-accent)!important;border:1px solid color-mix(in srgb,var(--theme-accent) 13%,var(--card-border))!important}
.notification-icon.warning{color:#c67a0a!important;background:rgba(245,158,11,.10)!important}.notification-icon.danger{color:#dc3150!important;background:rgba(244,63,94,.10)!important}
.notification-copy{min-width:0!important;display:block!important}.notification-copy strong{display:block!important;font-size:.69rem!important;line-height:1.3!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.notification-copy>span{display:block!important;margin-top:3px!important;font-size:.62rem!important;color:var(--text-muted)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}.notification-copy small{display:inline-block!important;margin-top:6px!important;font-size:.52rem!important;text-transform:uppercase!important;letter-spacing:.08em!important;color:var(--text-light)!important;font-weight:800!important}
.notification-meta{display:flex!important;align-items:center!important;gap:5px!important;color:var(--text-light)!important}.notification-time{font-size:.56rem!important;white-space:nowrap!important}
.notification-empty{display:grid;place-items:center;gap:5px;padding:30px 14px;color:var(--text-muted);font-size:.65rem;text-align:center}.notification-empty strong{font-size:.72rem;color:var(--text-primary)}
.notification-popover-foot{display:flex!important;align-items:center!important;gap:7px!important;padding:10px 14px 14px!important;border-top:1px solid color-mix(in srgb,var(--card-border) 70%,transparent)!important;background:color-mix(in srgb,var(--card-surface) 80%,transparent)!important}.notification-popover-foot .btn-secondary{flex:1!important;justify-content:center!important}.notification-popover-foot .btn-icon-ghost{flex:0 0 36px!important}

/* -------- Notification sounds settings -------- */
.notification-sound-map-card{margin-top:14px!important}
.notification-sound-map-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}
.notification-sound-map-grid label{display:grid;gap:6px;min-width:0}.notification-sound-map-grid label>span{font-size:.61rem;font-weight:800;color:var(--text-muted)}
.notification-sound-map-grid .modern-input{min-width:0}
.notification-sound-preview-row{display:flex;align-items:center;gap:7px;flex-wrap:wrap;margin-top:13px;padding-top:12px;border-top:1px solid var(--card-border)}
.notification-sound-preview-row>span{font-size:.6rem;font-weight:800;color:var(--text-muted);margin-right:2px}.notification-sound-preview-row button{border:1px solid var(--card-border);background:var(--card-surface);color:var(--text-primary);border-radius:999px;padding:7px 10px;font-size:.58rem;font-weight:750;cursor:pointer}.notification-sound-preview-row button:hover{border-color:var(--theme-accent-line);background:var(--theme-accent-soft);color:var(--theme-accent)}

/* -------- NEXUS Messenger 2.0 -------- */
.portal-chat-widget{z-index:1200!important}
.portal-chat-launcher{border:1px solid color-mix(in srgb,var(--theme-accent) 20%,var(--card-border))!important;background:color-mix(in srgb,var(--card-surface) 92%,var(--theme-accent-soft))!important;box-shadow:0 20px 46px rgba(20,31,50,.16)!important}
.portal-chat-window{
  width:min(720px,calc(100vw - 40px))!important;
  height:min(720px,82vh)!important;
  max-height:820px!important;
  border-radius:28px!important;
  border:1px solid color-mix(in srgb,var(--theme-accent) 16%,var(--card-border))!important;
  background:color-mix(in srgb,var(--card-surface) 98%,var(--theme-accent-soft))!important;
  box-shadow:0 34px 100px rgba(18,30,49,.25),0 1px 0 rgba(255,255,255,.7) inset!important;
  backdrop-filter:blur(34px) saturate(1.18)!important;
  overflow:hidden!important;
}
.portal-chat-header{min-height:70px!important;padding:12px 16px!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 75%,transparent)!important;background:color-mix(in srgb,var(--card-surface) 92%,transparent)!important}
.portal-chat-avatar{width:43px!important;height:43px!important;border-radius:15px!important;box-shadow:0 9px 22px color-mix(in srgb,var(--theme-accent) 22%,transparent)!important;background-size:cover!important;background-position:center!important}
.portal-chat-contact>div>strong{font-size:.86rem!important;letter-spacing:-.012em!important}.portal-chat-contact>div>span{margin-top:3px!important}.portal-chat-contact>div>span b{font-size:.58rem!important;font-weight:680!important;color:var(--text-muted)!important}
.portal-chat-icon-btn{width:36px!important;height:36px!important;border-radius:12px!important}
.portal-chat-project-strip{grid-template-columns:auto minmax(0,1fr) auto auto!important;gap:8px!important;padding:9px 16px!important;background:color-mix(in srgb,var(--theme-accent-soft) 42%,transparent)!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 70%,transparent)!important}.portal-chat-project-strip>span:first-child{font-size:.50rem!important;letter-spacing:.13em!important}.portal-chat-project-strip strong{font-size:.63rem!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-chat-project-strip small{font-size:.53rem!important;color:var(--text-muted)!important}.portal-chat-secure-chip{display:inline-flex!important;align-items:center!important;gap:4px!important;border:1px solid color-mix(in srgb,#10b981 25%,var(--card-border))!important;background:rgba(16,185,129,.08)!important;color:#0b8e67!important;border-radius:999px!important;padding:4px 7px!important;font-size:.50rem!important;font-weight:800!important}
.portal-chat-messages{flex:1!important;padding:18px 18px 12px!important;gap:10px!important;background:radial-gradient(circle at 14% 0%,color-mix(in srgb,var(--theme-accent-soft) 80%,transparent),transparent 27%),linear-gradient(180deg,color-mix(in srgb,var(--card-surface) 90%,transparent),color-mix(in srgb,var(--card-surface) 98%,transparent))!important;scroll-behavior:smooth!important}
.portal-chat-day{margin:5px auto 9px!important;padding:5px 9px!important;border:1px solid color-mix(in srgb,var(--card-border) 70%,transparent)!important;background:color-mix(in srgb,var(--card-surface) 88%,transparent)!important;border-radius:999px!important;font-size:.52rem!important;color:var(--text-muted)!important;width:max-content!important}
.portal-message{display:flex!important;align-items:flex-end!important;gap:8px!important;max-width:88%!important}.portal-message.is-mine{margin-left:auto!important;flex-direction:row-reverse!important}.portal-message.is-theirs{margin-right:auto!important}.portal-message-column{display:flex;flex-direction:column;gap:4px;min-width:0;max-width:100%}
.portal-chat-message-avatar{width:27px!important;height:27px!important;min-width:27px!important;border-radius:10px!important;font-size:.48rem!important;background-size:cover!important;background-position:center!important;box-shadow:none!important}
.portal-message-bubble{position:relative!important;max-width:500px!important;padding:10px 12px 9px!important;border-radius:17px!important;border:1px solid color-mix(in srgb,var(--card-border) 80%,transparent)!important;box-shadow:0 7px 20px rgba(23,36,57,.055)!important;background:var(--card-surface)!important;color:var(--text-primary)!important}
.portal-message.is-mine .portal-message-bubble{background:linear-gradient(135deg,color-mix(in srgb,var(--theme-accent) 92%,white 8%),var(--theme-accent-2))!important;color:var(--theme-on-accent)!important;border-color:transparent!important;border-bottom-right-radius:6px!important;box-shadow:0 10px 25px color-mix(in srgb,var(--theme-accent) 20%,transparent)!important}.portal-message.is-theirs .portal-message-bubble{border-bottom-left-radius:6px!important}
.portal-message-head{margin-bottom:4px!important}.portal-message-head strong{font-size:.55rem!important}.portal-message-head time{font-size:.49rem!important;opacity:.65!important}.portal-message-bubble p{font-size:.70rem!important;line-height:1.45!important;margin:2px 0!important;overflow-wrap:anywhere}
.portal-message-meta{font-size:.54rem!important;font-weight:800!important;opacity:.72!important;margin-bottom:4px!important;text-transform:none!important;letter-spacing:.01em!important}
.portal-message-linked{width:100%!important;border:0!important;border-left:2px solid currentColor!important;background:color-mix(in srgb,currentColor 7%,transparent)!important;border-radius:8px!important;padding:6px 8px!important;margin:0 0 7px!important;display:flex!important;align-items:center!important;gap:6px!important;font-size:.54rem!important;color:inherit!important;text-align:left!important;opacity:.84!important}.portal-message-linked.is-reply{cursor:pointer!important}.portal-message-linked span{white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.portal-message-status{justify-content:flex-end!important;margin-top:5px!important;font-size:.48rem!important;opacity:.68!important}
.portal-message-extras{display:flex;align-items:center;gap:5px;min-height:22px}.portal-message.is-mine .portal-message-extras{justify-content:flex-end}.portal-message-reactions{display:flex;gap:4px;flex-wrap:wrap}.portal-reaction-chip{border:1px solid color-mix(in srgb,var(--theme-accent) 16%,var(--card-border));background:color-mix(in srgb,var(--card-surface) 94%,var(--theme-accent-soft));border-radius:999px;padding:2px 7px;font-size:.57rem;line-height:1.5;cursor:pointer;color:var(--text-primary)}.portal-reaction-chip b{font-size:.50rem;color:var(--text-muted)}
.portal-message-actions{display:flex;align-items:center;gap:2px;opacity:0;transform:translateY(2px);transition:.15s ease}.portal-message:hover .portal-message-actions,.portal-message:focus-within .portal-message-actions{opacity:1;transform:none}.portal-message-actions button{border:0;background:transparent;width:27px;height:25px;border-radius:8px;display:grid;place-items:center;color:var(--text-muted);font-size:.59rem;cursor:pointer}.portal-message-actions button:hover{background:var(--theme-accent-soft);color:var(--theme-accent);transform:translateY(-1px)}
.portal-message-focus .portal-message-bubble{animation:portalMessageFocus 1.7s ease}@keyframes portalMessageFocus{0%,100%{box-shadow:0 7px 20px rgba(23,36,57,.055)}25%{box-shadow:0 0 0 7px color-mix(in srgb,var(--theme-accent) 14%,transparent),0 12px 28px color-mix(in srgb,var(--theme-accent) 22%,transparent)}}
.portal-message-attachment.premium-file{margin-top:8px!important;padding:8px!important;border-radius:12px!important;display:grid!important;grid-template-columns:auto minmax(0,1fr) auto!important;gap:8px!important;align-items:center!important;background:color-mix(in srgb,currentColor 6%,transparent)!important;border:1px solid color-mix(in srgb,currentColor 12%,transparent)!important;color:inherit!important;text-decoration:none!important}.portal-file-icon{width:30px;height:30px;border-radius:9px;display:grid;place-items:center;background:color-mix(in srgb,currentColor 9%,transparent)}.portal-message-attachment.premium-file span:nth-child(2){min-width:0}.portal-message-attachment.premium-file strong,.portal-message-attachment.premium-file small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.portal-message-attachment.premium-file strong{font-size:.57rem}.portal-message-attachment.premium-file small{font-size:.48rem;margin-top:2px;opacity:.65}
.portal-chat-typing{padding:5px 18px 7px!important}.portal-chat-typing b{font-size:.57rem!important}
.portal-chat-context{margin:0 12px 5px!important;border-radius:12px!important;padding:7px 9px!important;background:var(--theme-accent-soft)!important;border:1px solid var(--theme-accent-line)!important;color:var(--theme-accent)!important}
.portal-chat-quick-reactions{display:flex;gap:3px;padding:5px 14px 0;background:color-mix(in srgb,var(--card-surface) 96%,transparent)}.portal-chat-quick-reactions button{width:30px;height:27px;border:0;border-radius:9px;background:transparent;cursor:pointer;font-size:.67rem}.portal-chat-quick-reactions button:hover{background:var(--theme-accent-soft);transform:translateY(-1px)}
.portal-chat-compose{grid-template-columns:auto minmax(0,1fr) auto!important;gap:7px!important;margin:5px 12px 12px!important;padding:7px!important;border-radius:18px!important;background:color-mix(in srgb,var(--card-surface) 97%,var(--theme-accent-soft))!important;border:1px solid color-mix(in srgb,var(--theme-accent) 12%,var(--card-border))!important;box-shadow:0 10px 30px rgba(20,31,50,.07)!important}.portal-chat-compose-main textarea{font-size:.70rem!important;padding:9px 5px!important}.portal-chat-compose-btn,.portal-chat-send-btn{width:38px!important;height:38px!important;border-radius:12px!important}.portal-chat-send-btn{box-shadow:0 8px 18px color-mix(in srgb,var(--theme-accent) 22%,transparent)!important}
.portal-chat-inbox{top:115px!important;left:0!important;right:auto!important;width:min(310px,44%)!important;padding:12px!important;border-right:1px solid var(--card-border)!important;box-shadow:16px 0 40px rgba(20,31,50,.10)!important}.portal-chat-inbox-item{border-radius:14px!important;padding:9px!important}

[data-theme="obsidian"] .notification-popover,[data-theme="obsidian"] .portal-chat-window{background:rgba(10,16,27,.985)!important;border-color:rgba(158,177,211,.18)!important}
[data-theme="obsidian"] .notification-item.is-unread{background:rgba(140,166,211,.09)!important}
[data-theme="obsidian"] .portal-message.is-theirs .portal-message-bubble{background:#121c2c!important;color:#f4f7fb!important;border-color:rgba(255,255,255,.10)!important}

@media(max-width:980px){
  .notification-popover{top:68px!important;left:8px!important;right:8px!important;width:auto!important;border-radius:20px!important;max-height:calc(100dvh - 82px)!important}
  .notification-list{max-height:calc(100dvh - 290px)!important}
  .notification-filter-bar{padding-left:12px;padding-right:12px}.notification-popover-head{padding-left:14px!important;padding-right:14px!important}.notification-summary{margin-left:14px!important;margin-right:14px!important}
  .notification-sound-map-grid{grid-template-columns:1fr 1fr}

  .portal-chat-window{position:fixed!important;inset:0!important;width:100vw!important;height:100dvh!important;max-height:none!important;border-radius:0!important;border:0!important;padding-top:env(safe-area-inset-top)!important;padding-bottom:env(safe-area-inset-bottom)!important;z-index:5000!important}
  .portal-chat-header{min-height:66px!important;padding:9px 12px!important}.portal-chat-project-strip{padding:8px 12px!important;grid-template-columns:auto minmax(0,1fr) auto!important}.portal-chat-project-strip small{display:none!important}.portal-chat-secure-chip{display:none!important}
  .portal-chat-messages{padding:14px 10px 10px!important}.portal-message{max-width:94%!important}.portal-message-bubble{max-width:min(78vw,430px)!important}.portal-chat-message-avatar{width:25px!important;height:25px!important;min-width:25px!important}.portal-message-actions{opacity:.74!important}.portal-message-actions button{width:25px!important;height:24px!important}.portal-message-actions button:nth-child(n+4){display:none}
  .portal-chat-inbox{position:absolute!important;top:calc(66px + env(safe-area-inset-top))!important;bottom:0!important;width:86%!important;max-width:330px!important;z-index:8!important;border-radius:0 20px 0 0!important}
  .portal-chat-quick-reactions{padding-left:10px!important}.portal-chat-compose{margin:4px 8px 8px!important}.portal-chat-compose-main textarea{font-size:16px!important}
}
@media(max-width:640px){
  .notification-sound-map-grid{grid-template-columns:1fr}
  .notification-popover-foot .btn-secondary{font-size:.55rem!important;padding-inline:8px!important}
  .portal-message-bubble p{font-size:.68rem!important}.portal-message-head strong{font-size:.53rem!important}.portal-message-extras{max-width:80vw}
}
.notification-item-shell{position:relative;border-radius:16px}.notification-item-shell.is-unread{background:color-mix(in srgb,var(--theme-accent-soft) 38%,transparent)}.notification-item-shell.is-unread:before{content:"";position:absolute;left:4px;top:50%;width:5px;height:5px;border-radius:50%;background:var(--theme-accent);transform:translateY(-50%);z-index:2}.notification-item-shell .notification-item{padding-right:35px!important}.notification-dismiss{position:absolute;right:7px;top:8px;width:25px;height:25px;border:0;border-radius:8px;background:transparent;color:var(--text-light);display:grid;place-items:center;cursor:pointer;opacity:0;transition:.15s ease}.notification-item-shell:hover .notification-dismiss{opacity:1}.notification-dismiss:hover{background:color-mix(in srgb,#ef4444 9%,transparent);color:#dc3150}
.notification-item.is-unread:before{display:none!important}
.portal-message-linked.is-deliverable{cursor:pointer!important}.portal-message-linked.is-deliverable:hover{background:color-mix(in srgb,currentColor 12%,transparent)!important}
@media(max-width:980px){.notification-dismiss{opacity:.72}}

/* ===== V14.13 — Messenger premium compact ===== */
.portal-chat-widget{
  position:fixed!important;
  right:18px!important;
  bottom:18px!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  gap:10px!important;
  z-index:1350!important;
}
.portal-chat-launcher{
  min-height:60px!important;
  padding:9px 14px 9px 10px!important;
  border-radius:20px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:linear-gradient(180deg,rgba(14,20,33,.96),rgba(10,16,27,.94))!important;
  color:#f5f7fb!important;
  box-shadow:0 26px 60px rgba(4,10,22,.38),0 0 0 1px rgba(255,255,255,.03) inset!important;
  backdrop-filter:blur(22px) saturate(1.2)!important;
}
.portal-chat-launcher:hover{transform:translateY(-2px)!important;box-shadow:0 30px 68px rgba(4,10,22,.44),0 0 0 1px rgba(255,255,255,.04) inset!important}
.portal-chat-launcher-icon{
  width:40px!important;
  height:40px!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#2bb4ff,#7c5cff 55%,#ff4fa0)!important;
  color:white!important;
  box-shadow:0 14px 26px rgba(99,102,241,.28)!important;
}
.portal-chat-launcher-copy strong{font-size:.8rem!important;color:#f8fbff!important}
.portal-chat-launcher-copy small{font-size:.64rem!important;color:rgba(230,238,248,.66)!important}
.portal-chat-badge{
  background:linear-gradient(135deg,#ff4fa0,#8a5cff)!important;
  color:#fff!important;
  min-width:20px!important;
  height:20px!important;
  padding:0 6px!important;
  border:0!important;
  box-shadow:0 8px 18px rgba(255,79,160,.35)!important;
}
.portal-chat-toast{
  border:1px solid rgba(255,255,255,.09)!important;
  background:linear-gradient(180deg,rgba(14,20,33,.97),rgba(10,16,27,.95))!important;
  color:#f4f7fb!important;
  box-shadow:0 26px 54px rgba(4,10,22,.34)!important;
}
.portal-chat-toast small{color:rgba(231,238,248,.72)!important}

.portal-chat-window{
  right:0!important;
  bottom:76px!important;
  width:min(500px,calc(100vw - 36px))!important;
  height:min(650px,78vh)!important;
  max-height:650px!important;
  border-radius:30px!important;
  border:1px solid rgba(255,255,255,.09)!important;
  background:
    radial-gradient(circle at 22% 0%,rgba(52,135,255,.14),transparent 32%),
    radial-gradient(circle at 86% 100%,rgba(255,79,160,.14),transparent 30%),
    linear-gradient(180deg,rgba(16,22,34,.98),rgba(10,15,25,.98))!important;
  color:#eef3fb!important;
  box-shadow:0 34px 90px rgba(2,8,20,.48),0 1px 0 rgba(255,255,255,.05) inset!important;
  backdrop-filter:blur(28px) saturate(1.22)!important;
}
.portal-chat-window::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(180deg,rgba(255,255,255,.05),transparent 14%,transparent 82%,rgba(255,255,255,.02));
}
.portal-chat-header{
  position:relative!important;
  z-index:1!important;
  min-height:72px!important;
  padding:14px 16px!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.01))!important;
}
.portal-chat-contact{gap:12px!important}
.portal-chat-avatar{
  width:44px!important;
  height:44px!important;
  border-radius:16px!important;
  background:linear-gradient(135deg,#1aa7ff,#6d62ff)!important;
  color:white!important;
  border:1px solid rgba(255,255,255,.12)!important;
  box-shadow:0 12px 24px rgba(52,135,255,.2)!important;
}
.portal-chat-contact>div>strong{font-size:.96rem!important;color:#f8fbff!important;font-weight:800!important}
.portal-chat-contact>div>span{display:flex!important;align-items:center!important;gap:6px!important}
.portal-chat-contact>div>span b{font-size:.63rem!important;color:rgba(230,238,248,.72)!important;font-weight:700!important}
.portal-chat-live-dot{background:#37d67a!important;box-shadow:0 0 0 6px rgba(55,214,122,.12)!important}
.portal-chat-icon-btn{
  width:38px!important;
  height:38px!important;
  border-radius:12px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:rgba(255,255,255,.04)!important;
  color:#dce5f3!important;
}
.portal-chat-icon-btn:hover{background:rgba(255,255,255,.08)!important;color:#fff!important;transform:translateY(-1px)!important}

.portal-chat-project-strip{
  position:relative!important;
  z-index:1!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  grid-template-areas:"label name chip" "label state chip"!important;
  align-items:center!important;
  gap:5px 10px!important;
  padding:10px 16px!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important;
  background:rgba(255,255,255,.03)!important;
}
.portal-chat-project-strip>span:first-child{grid-area:label!important;font-size:.54rem!important;color:rgba(173,196,231,.82)!important;letter-spacing:.16em!important}
.portal-chat-project-strip strong{grid-area:name!important;font-size:.76rem!important;color:#f6f9ff!important}
.portal-chat-project-strip small{grid-area:state!important;font-size:.58rem!important;color:rgba(224,232,244,.64)!important}
.portal-chat-secure-chip{
  grid-area:chip!important;
  justify-self:end!important;
  border:1px solid rgba(86,214,154,.18)!important;
  background:rgba(38,192,128,.12)!important;
  color:#74efb7!important;
  padding:5px 9px!important;
  font-size:.54rem!important;
}

.portal-chat-inbox{
  top:118px!important;
  width:min(285px,42%)!important;
  border-right:1px solid rgba(255,255,255,.07)!important;
  background:linear-gradient(180deg,rgba(18,25,38,.98),rgba(12,18,29,.98))!important;
  box-shadow:14px 0 34px rgba(2,8,20,.35)!important;
}
.portal-chat-inbox-head strong,.portal-chat-inbox-head span,.portal-chat-inbox-item strong{color:#f5f8ff!important}
.portal-chat-inbox-item{background:rgba(255,255,255,.03)!important;border:1px solid rgba(255,255,255,.05)!important}
.portal-chat-inbox-item small,.portal-chat-inbox-item span{color:rgba(230,238,248,.62)!important}

.portal-chat-messages{
  position:relative!important;
  z-index:1!important;
  padding:18px 16px 10px!important;
  gap:12px!important;
  background:
    linear-gradient(180deg,rgba(255,255,255,.02),transparent 14%),
    radial-gradient(circle at top left,rgba(52,135,255,.08),transparent 24%)!important;
}
.portal-chat-day{
  background:rgba(255,255,255,.05)!important;
  border:1px solid rgba(255,255,255,.07)!important;
  color:rgba(225,232,244,.68)!important;
  padding:6px 10px!important;
  font-size:.55rem!important;
}
.portal-message{max-width:84%!important;gap:10px!important}
.portal-chat-message-avatar{
  width:31px!important;
  height:31px!important;
  min-width:31px!important;
  border-radius:12px!important;
  background:linear-gradient(135deg,#1ba6ff,#6771ff)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  color:#fff!important;
}
.portal-message-bubble{
  max-width:360px!important;
  padding:12px 13px 11px!important;
  border-radius:22px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03))!important;
  color:#eef3fb!important;
  box-shadow:0 10px 24px rgba(2,8,20,.18)!important;
}
.portal-message.is-theirs .portal-message-bubble{border-bottom-left-radius:10px!important}
.portal-message.is-mine .portal-message-bubble{
  background:linear-gradient(135deg,#7c2b62 0%,#a4367e 32%,#6f3df5 100%)!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.03)!important;
  border-bottom-right-radius:10px!important;
  box-shadow:0 16px 30px rgba(124,43,98,.35)!important;
}
.portal-message-head strong{font-size:.63rem!important;font-weight:800!important;letter-spacing:.02em!important;color:inherit!important;opacity:.92!important}
.portal-message-head time{font-size:.56rem!important;color:inherit!important;opacity:.58!important}
.portal-message-meta{font-size:.56rem!important;color:inherit!important;opacity:.72!important}
.portal-message-bubble p{font-size:.79rem!important;line-height:1.52!important;margin:3px 0 2px!important;color:inherit!important}
.portal-message-linked{
  border-left:0!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:rgba(255,255,255,.06)!important;
  border-radius:14px!important;
  padding:7px 9px!important;
  margin-bottom:8px!important;
  font-size:.58rem!important;
}
.portal-message.is-mine .portal-message-linked{background:rgba(255,255,255,.12)!important}
.portal-message-status,.portal-message-status button,.portal-message-attachment.premium-file small{color:inherit!important}
.portal-message-status{font-size:.52rem!important;opacity:.66!important}
.portal-message-attachment.premium-file{
  margin-top:9px!important;
  border-radius:15px!important;
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
.portal-message-attachment.premium-file strong{font-size:.62rem!important;color:inherit!important}
.portal-message-attachment.premium-file small{font-size:.52rem!important;opacity:.66!important}
.portal-file-icon{background:rgba(255,255,255,.10)!important}
.portal-reaction-chip{
  background:rgba(255,255,255,.05)!important;
  border:1px solid rgba(255,255,255,.07)!important;
  color:#eef4ff!important;
}
.portal-message-actions{opacity:0!important}
.portal-message:hover .portal-message-actions,.portal-message:focus-within .portal-message-actions{opacity:1!important}
.portal-message-actions button{
  width:28px!important;
  height:28px!important;
  border-radius:10px!important;
  background:rgba(255,255,255,.04)!important;
  color:#d3deee!important;
}
.portal-message-actions button:hover{background:rgba(255,255,255,.10)!important;color:#fff!important}

.portal-chat-typing{padding:4px 16px 8px!important}
.portal-chat-typing b{color:rgba(230,238,248,.72)!important;font-size:.58rem!important}
.portal-chat-context{
  margin:0 14px 6px!important;
  border-radius:15px!important;
  padding:8px 10px!important;
  background:rgba(89,112,255,.12)!important;
  border:1px solid rgba(111,140,255,.22)!important;
  color:#dbe4ff!important;
}
.portal-chat-quick-reactions{
  gap:6px!important;
  padding:4px 14px 2px!important;
  background:transparent!important;
}
.portal-chat-quick-reactions button{
  width:auto!important;
  min-width:34px!important;
  height:30px!important;
  padding:0 10px!important;
  border:1px solid rgba(255,255,255,.07)!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.04)!important;
  color:#fff!important;
}
.portal-chat-quick-reactions button:hover{background:rgba(255,255,255,.08)!important}
.portal-chat-compose{
  position:relative!important;
  z-index:1!important;
  gap:8px!important;
  margin:6px 12px 12px!important;
  padding:8px!important;
  border-radius:20px!important;
  border:1px solid rgba(255,255,255,.09)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.04),rgba(255,255,255,.02))!important;
  box-shadow:0 18px 36px rgba(2,8,20,.18)!important;
}
.portal-chat-compose-main textarea{
  min-height:42px!important;
  max-height:110px!important;
  padding:10px 4px!important;
  font-size:.78rem!important;
  line-height:1.45!important;
  color:#f3f7ff!important;
  background:transparent!important;
}
.portal-chat-compose-main textarea::placeholder{color:rgba(229,237,248,.48)!important}
.portal-chat-attachment-preview{color:rgba(229,237,248,.66)!important;font-size:.58rem!important}
.portal-chat-compose-btn,
.portal-chat-send-btn{
  width:40px!important;
  height:40px!important;
  border-radius:14px!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
.portal-chat-compose-btn{background:rgba(255,255,255,.05)!important;color:#d7e1ef!important}
.portal-chat-compose-btn:hover{background:rgba(255,255,255,.09)!important;color:#fff!important}
.portal-chat-send-btn{
  background:linear-gradient(135deg,#2cb0ff,#6a67ff 58%,#ff4fa0)!important;
  color:#fff!important;
  box-shadow:0 16px 28px rgba(64,116,255,.28)!important;
}
.portal-chat-send-btn:hover{transform:translateY(-1px)!important;box-shadow:0 20px 32px rgba(64,116,255,.34)!important}

[data-theme="obsidian"] .portal-chat-window,
[data-theme="obsidian"] .portal-chat-launcher,
[data-theme="obsidian"] .portal-chat-toast{background:linear-gradient(180deg,rgba(16,22,34,.98),rgba(10,15,25,.98))!important}
[data-theme="obsidian"] .portal-message.is-theirs .portal-message-bubble{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.03))!important;color:#eef3fb!important;border-color:rgba(255,255,255,.08)!important}

@media(max-width:980px){
  .portal-chat-widget{right:10px!important;bottom:10px!important;left:auto!important}
  .portal-chat-launcher{min-height:56px!important;padding:8px 12px 8px 9px!important}
  .portal-chat-window{
    position:fixed!important;
    left:8px!important;
    right:8px!important;
    bottom:8px!important;
    top:auto!important;
    width:auto!important;
    height:min(86dvh,760px)!important;
    max-height:none!important;
    border-radius:24px!important;
  }
  .portal-chat-header{padding:12px 12px!important}
  .portal-chat-project-strip{padding:9px 12px!important;grid-template-columns:auto minmax(0,1fr) auto!important}
  .portal-chat-project-strip small{display:block!important}
  .portal-chat-secure-chip{display:inline-flex!important}
  .portal-chat-messages{padding:14px 12px 8px!important}
  .portal-message{max-width:92%!important}
  .portal-message-bubble{max-width:min(76vw,350px)!important}
  .portal-chat-inbox{top:118px!important;max-width:310px!important;width:85%!important}
}

@media(max-width:640px){
  .portal-chat-widget{right:8px!important;bottom:8px!important}
  .portal-chat-launcher{width:auto!important;max-width:calc(100vw - 18px)!important;border-radius:18px!important}
  .portal-chat-launcher-icon{width:38px!important;height:38px!important}
  .portal-chat-window{
    inset:0!important;
    width:100vw!important;
    height:100dvh!important;
    border-radius:0!important;
    border:0!important;
    padding-top:env(safe-area-inset-top)!important;
    padding-bottom:env(safe-area-inset-bottom)!important;
  }
  .portal-chat-header{min-height:68px!important}
  .portal-chat-avatar{width:40px!important;height:40px!important;border-radius:14px!important}
  .portal-chat-contact>div>strong{font-size:.9rem!important}
  .portal-chat-project-strip{gap:4px 8px!important}
  .portal-chat-project-strip small{font-size:.56rem!important}
  .portal-chat-messages{padding:12px 10px 8px!important}
  .portal-message{max-width:96%!important;gap:8px!important}
  .portal-chat-message-avatar{width:28px!important;height:28px!important;min-width:28px!important}
  .portal-message-bubble{max-width:min(80vw,330px)!important;padding:11px 12px 10px!important}
  .portal-message-bubble p{font-size:.77rem!important}
  .portal-message-actions button:nth-child(n+4){display:none!important}
  .portal-chat-quick-reactions{overflow:auto!important;scrollbar-width:none!important}
  .portal-chat-quick-reactions::-webkit-scrollbar{display:none!important}
  .portal-chat-compose{margin:6px 8px 8px!important;padding:7px!important;border-radius:18px!important}
  .portal-chat-compose-main textarea{font-size:16px!important}
}

/* ========================================================================== 
   V14.14 — FINAL PREMIUM CHAT POLISH OVERRIDES
   ========================================================================== */
.portal-chat-widget{
  right:18px!important;
  bottom:18px!important;
  width:min(358px,calc(100vw - 24px))!important;
  z-index:1600!important;
}
.portal-chat-widget.chat-open .portal-chat-launcher{
  opacity:0!important;
  transform:translateY(14px) scale(.96)!important;
  pointer-events:none!important;
}
.portal-chat-launcher{
  min-height:54px!important;
  padding:8px 12px 8px 8px!important;
  border-radius:18px!important;
  background:linear-gradient(160deg,rgba(15,23,42,.92),rgba(21,34,55,.9))!important;
  border:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 22px 56px rgba(2,8,23,.28)!important;
  color:#f8fbff!important;
}
.portal-chat-launcher-copy strong{color:#f8fbff!important}
.portal-chat-launcher-copy small{color:rgba(226,232,240,.62)!important}
.portal-chat-window{
  right:0!important;
  bottom:0!important;
  width:358px!important;
  max-width:calc(100vw - 24px)!important;
  height:min(558px,calc(100vh - 132px))!important;
  border-radius:26px!important;
  border:1px solid rgba(255,255,255,.09)!important;
  background:radial-gradient(circle at top right,rgba(96,165,250,.16),transparent 30%),linear-gradient(180deg,rgba(8,14,25,.985),rgba(10,16,28,.965))!important;
  box-shadow:0 38px 90px rgba(2,8,23,.36)!important;
  overflow:hidden!important;
}
.portal-chat-header{
  padding:14px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.05),rgba(255,255,255,.02))!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important;
}
.portal-chat-avatar{
  width:42px!important;
  height:42px!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#4da2ff,#7c5cff)!important;
  color:#fff!important;
  box-shadow:0 12px 24px rgba(64,124,255,.28)!important;
}
.portal-chat-contact strong{font-size:.92rem!important;color:#f8fbff!important}
.portal-chat-contact>div>span{font-size:.65rem!important;color:rgba(226,232,240,.72)!important}
.portal-chat-project-strip{
  padding:10px 14px!important;
  background:rgba(255,255,255,.03)!important;
  border-bottom:1px solid rgba(255,255,255,.07)!important;
}
.portal-chat-project-strip span{color:#7db5ff!important}
.portal-chat-project-strip strong{font-size:.72rem!important;color:#f8fbff!important}
.portal-chat-project-strip small{color:rgba(226,232,240,.6)!important}
.portal-chat-secure-chip{
  padding:7px 10px!important;
  border-radius:999px!important;
  background:rgba(16,185,129,.14)!important;
  color:#b6f6d9!important;
  border:1px solid rgba(52,211,153,.2)!important;
}
.portal-chat-messages{
  padding:14px 14px 10px!important;
  gap:10px!important;
  background:linear-gradient(180deg,rgba(255,255,255,.02),transparent 18%,transparent)!important;
}
.portal-chat-day{
  align-self:center!important;
  padding:6px 10px!important;
  border-radius:999px!important;
  background:rgba(255,255,255,.05)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  color:rgba(226,232,240,.72)!important;
  font-size:.6rem!important;
  font-weight:800!important;
}
.portal-chat-messages .portal-message{
  max-width:86%!important;
  gap:8px!important;
  align-items:flex-end!important;
}
.portal-chat-message-avatar{
  width:26px!important;
  height:26px!important;
  min-width:26px!important;
  border-radius:9px!important;
  font-size:.56rem!important;
  font-weight:800!important;
  background:linear-gradient(135deg,#4da2ff,#7c5cff)!important;
  color:#fff!important;
  box-shadow:0 10px 22px rgba(64,124,255,.18)!important;
}
.portal-message.client .portal-chat-message-avatar{background:linear-gradient(135deg,#19c37d,#53d6a4)!important}
.portal-message-column{display:flex!important;flex-direction:column!important;gap:5px!important;min-width:0!important}
.portal-chat-messages .portal-message-bubble{
  max-width:252px!important;
  padding:11px 12px!important;
  border-radius:18px 18px 18px 8px!important;
  background:rgba(255,255,255,.065)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  box-shadow:0 10px 26px rgba(2,8,23,.18)!important;
  backdrop-filter:blur(14px)!important;
}
.portal-chat-messages .portal-message.is-mine .portal-message-bubble{
  border-radius:18px 18px 8px 18px!important;
  background:linear-gradient(135deg,#42a5ff,#6a5cff)!important;
  color:#f8fbff!important;
  box-shadow:0 16px 30px rgba(55,111,255,.28)!important;
}
.portal-chat-messages .portal-message-head{
  margin:0 0 4px!important;
  gap:8px!important;
}
.portal-chat-messages .portal-message-head strong{font-size:.64rem!important;color:rgba(248,250,252,.92)!important}
.portal-chat-messages .portal-message-head time{font-size:.56rem!important;color:rgba(226,232,240,.56)!important}
.portal-chat-messages .portal-message-meta{font-size:.58rem!important;color:rgba(226,232,240,.62)!important}
.portal-chat-messages .portal-message p{font-size:.76rem!important;line-height:1.48!important;margin-top:2px!important;color:inherit!important}
.portal-message-linked{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  max-width:100%!important;
  margin-bottom:8px!important;
  padding:6px 9px!important;
  border-radius:12px!important;
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  color:inherit!important;
  font-size:.62rem!important;
}
.portal-message-linked span{overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important}
.portal-message-extras{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:8px!important}
.portal-message-reactions{display:flex!important;flex-wrap:wrap!important;gap:6px!important}
.portal-reaction-chip{
  padding:4px 7px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:rgba(255,255,255,.04)!important;
  color:#eef4ff!important;
  font-size:.58rem!important;
}
.portal-message-actions{
  opacity:.12!important;
  transform:translateY(2px)!important;
  transition:opacity .18s ease,transform .18s ease!important;
}
.portal-message:hover .portal-message-actions{opacity:1!important;transform:none!important}
.portal-message-actions button{
  width:22px!important;
  height:22px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:rgba(255,255,255,.04)!important;
  color:#eef4ff!important;
}
.portal-chat-context{
  margin:0 14px 8px!important;
  padding:8px 10px!important;
  border-radius:14px!important;
  background:rgba(255,255,255,.05)!important;
  border:1px solid rgba(255,255,255,.08)!important;
  color:#eef4ff!important;
}
.portal-chat-quick-reactions{padding:0 14px 10px!important;gap:8px!important}
.portal-chat-quick-reactions button{
  width:28px!important;
  height:28px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.08)!important;
  background:rgba(255,255,255,.04)!important;
  color:#fff!important;
}
.portal-chat-compose{
  grid-template-columns:auto minmax(0,1fr) auto!important;
  gap:8px!important;
  margin:0!important;
  padding:12px 14px 14px!important;
  border-top:1px solid rgba(255,255,255,.07)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.02))!important;
}
.portal-chat-compose-main{
  border:1px solid rgba(255,255,255,.09)!important;
  border-radius:18px!important;
  background:rgba(255,255,255,.05)!important;
  padding:10px 12px 9px!important;
}
.portal-chat-compose-main textarea{
  min-height:22px!important;
  max-height:88px!important;
  padding:0!important;
  font-size:.74rem!important;
  line-height:1.42!important;
  color:#f8fbff!important;
  -webkit-text-fill-color:#f8fbff!important;
}
.portal-chat-compose-main textarea::placeholder{color:rgba(226,232,240,.46)!important}
.portal-chat-compose-btn,.portal-chat-send-btn{
  width:40px!important;
  height:40px!important;
  border-radius:14px!important;
}
.portal-chat-compose-btn{
  border:1px solid rgba(255,255,255,.1)!important;
  background:rgba(255,255,255,.05)!important;
  color:#d2d8e3!important;
}
.portal-chat-send-btn{
  background:linear-gradient(135deg,#4da2ff,#7c5cff)!important;
  color:#fff!important;
  box-shadow:0 10px 24px rgba(76,111,255,.28)!important;
}
.portal-chat-inbox{
  inset:98px 8px 8px!important;
  border-radius:18px!important;
  background:rgba(8,12,22,.94)!important;
  border:1px solid rgba(255,255,255,.08)!important;
}
.portal-chat-toast{
  width:min(320px,calc(100vw - 24px))!important;
  border-radius:16px!important;
  background:linear-gradient(160deg,rgba(15,23,42,.92),rgba(21,34,55,.9))!important;
  border:1px solid rgba(255,255,255,.08)!important;
  color:#f8fbff!important;
}
.portal-chat-toast small{color:rgba(226,232,240,.62)!important}

@media(max-width:760px){
  .portal-chat-widget{right:10px!important;bottom:10px!important;width:calc(100vw - 20px)!important}
  .portal-chat-window{left:10px!important;right:10px!important;top:10px!important;bottom:10px!important;width:auto!important;max-width:none!important;height:auto!important;max-height:none!important;border-radius:22px!important}
  .portal-chat-launcher{min-height:52px!important;padding:8px 11px 8px 8px!important}
  .portal-chat-launcher-copy small{display:none!important}
  .portal-chat-messages{padding:12px 12px 8px!important}
  .portal-chat-messages .portal-message{max-width:92%!important}
  .portal-chat-messages .portal-message-bubble{max-width:min(76vw,280px)!important}
  .portal-message-actions{opacity:1!important;transform:none!important;flex-wrap:wrap!important}
  .portal-chat-context{margin:0 12px 8px!important}
  .portal-chat-quick-reactions{padding:0 12px 9px!important}
  .portal-chat-compose{padding:10px 12px 12px!important}
  .portal-chat-compose-main textarea{font-size:16px!important}
}

/* ========================================================================== 
   V14.15 — Quick Create contextuel + vrais fichiers projet
   ========================================================================== */
.quick-create-anchor{position:relative;display:flex;align-items:center}
.quick-create-popover{
  position:absolute;
  top:calc(100% + 12px);
  right:0;
  width:min(390px,calc(100vw - 30px));
  padding:12px;
  border:1px solid color-mix(in srgb,var(--theme-accent) 14%,var(--card-border));
  border-radius:22px;
  background:color-mix(in srgb,var(--card-surface) 97%,var(--theme-accent-soft));
  box-shadow:0 26px 72px rgba(15,23,42,.20);
  backdrop-filter:blur(26px) saturate(1.12);
  opacity:0;
  visibility:hidden;
  transform:translateY(-6px) scale(.985);
  transform-origin:top right;
  pointer-events:none;
  transition:opacity .18s ease,transform .2s cubic-bezier(.16,1,.3,1),visibility .18s;
  z-index:1900;
}
.quick-create-popover.active{opacity:1;visibility:visible;transform:none;pointer-events:auto}
.quick-create-head{display:flex;flex-direction:column;gap:3px;padding:4px 5px 11px}
.quick-create-head strong{font:800 .84rem var(--font-display);color:var(--text-primary)}
.quick-create-grid{display:grid;grid-template-columns:1fr 1fr;gap:7px}
.quick-create-grid>button{
  min-width:0;
  display:grid;
  grid-template-columns:auto minmax(0,1fr);
  align-items:center;
  gap:9px;
  padding:10px;
  border:1px solid color-mix(in srgb,var(--theme-accent) 8%,var(--card-border));
  border-radius:15px;
  background:color-mix(in srgb,var(--card-surface) 95%,var(--theme-accent-soft));
  color:var(--text-primary);
  text-align:left;
  cursor:pointer;
  transition:var(--transition-smooth);
}
.quick-create-grid>button:hover{transform:translateY(-2px);border-color:var(--theme-accent-line);background:var(--theme-accent-soft);box-shadow:0 12px 26px color-mix(in srgb,var(--theme-accent) 9%,transparent)}
.quick-create-grid>button>span{width:35px;height:35px;border-radius:12px;display:grid;place-items:center;background:color-mix(in srgb,var(--theme-accent) 11%,var(--card-surface));color:var(--theme-accent)}
.quick-create-grid>button>div{min-width:0;display:flex;flex-direction:column;gap:2px}
.quick-create-grid>button strong{font-size:.68rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.quick-create-grid>button small{font-size:.55rem;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
[data-theme="obsidian"] .quick-create-popover{background:rgba(10,16,27,.98);border-color:rgba(255,255,255,.10)}
[data-theme="obsidian"] .quick-create-grid>button{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.08)}

.portal-doc-action[data-portal-doc-upload],.portal-doc-action[data-ws-doc-upload]{color:var(--theme-accent)}
.portal-doc-action.has-file[data-portal-doc-upload],.portal-doc-action.has-file[data-ws-doc-upload]{color:#0d9f72;background:color-mix(in srgb,#10b981 8%,var(--card-surface));border-color:color-mix(in srgb,#10b981 24%,var(--card-border))}
.portal-doc-action.no-file[data-portal-doc-download],.portal-doc-action.no-file[data-ws-doc-download]{opacity:.46}
.portal-doc-action.no-file[data-portal-doc-download]:hover,.portal-doc-action.no-file[data-ws-doc-download]:hover{opacity:1;color:var(--theme-accent);background:var(--theme-accent-soft)}
.project-doc-row.has-file .project-doc-icon{color:#0d9f72;background:color-mix(in srgb,#10b981 9%,var(--card-surface));border-color:color-mix(in srgb,#10b981 20%,var(--card-border))}
.project-doc-row.no-file .project-doc-main>div>span{font-style:italic;color:var(--text-light)}

@media(max-width:760px){
  .quick-create-popover{position:fixed;left:10px;right:10px;top:74px;width:auto;max-height:calc(100dvh - 90px);overflow:auto;border-radius:20px}
  .quick-create-grid{grid-template-columns:1fr 1fr}
  .quick-create-grid>button{padding:9px}
  .quick-create-grid>button small{display:none}
}
@media(max-width:420px){.quick-create-grid{grid-template-columns:1fr}}


/* ==========================================================================
   V14.16 — Navigation cards: image only
   ========================================================================== */
/* Les titres sont déjà intégrés aux images. Aucun badge/texte superposé sur les six cartes. */
.blueprints-bento-grid .blueprint-photo-card .blueprint-card-body,
.blueprints-bento-grid .blueprint-photo-card .blueprint-card-kicker,
.blueprints-bento-grid .blueprint-photo-card .blueprint-arrow{display:none!important}
.blueprints-bento-grid .blueprint-photo-card.has-custom-cover .blueprint-card-body h3,
.blueprints-bento-grid .blueprint-photo-card.has-custom-cover .blueprint-card-body p{display:none!important}

/* ========================================================================== 
   V14.17 — Aperçu fichiers projet / portail client
   ========================================================================== */
/* Garde-fou pour l'ancienne lightbox : aucune image HD ne peut déborder. */
.lightbox-content{
  position:relative;
  width:min(94vw,1180px);
  height:min(90vh,820px);
  display:flex;
  align-items:center;
  justify-content:center;
  padding:18px;
  border-radius:24px;
  background:rgba(9,15,27,.93);
  border:1px solid rgba(255,255,255,.12);
  box-shadow:0 36px 100px rgba(2,8,23,.42);
  overflow:hidden;
}
.lightbox-content>img{
  display:block;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
}
.lightbox-close{
  position:absolute;
  top:12px;
  right:12px;
  width:40px;
  height:40px;
  display:grid;
  place-items:center;
  border-radius:13px;
  border:1px solid rgba(255,255,255,.12);
  background:rgba(8,15,28,.72);
  color:#fff;
  cursor:pointer;
  backdrop-filter:blur(14px);
  z-index:2;
}

.portal-file-preview-backdrop{
  position:fixed;
  inset:0;
  z-index:6200;
  display:none;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(8,15,28,.58);
  backdrop-filter:blur(18px) saturate(1.08);
}
.portal-file-preview-backdrop.active{display:flex}
.portal-file-preview-shell{
  width:min(1120px,94vw);
  height:min(820px,90vh);
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  overflow:hidden;
  border-radius:28px;
  border:1px solid color-mix(in srgb,var(--theme-accent) 16%,rgba(255,255,255,.18));
  background:color-mix(in srgb,var(--card-surface) 96%,var(--theme-accent-soft));
  box-shadow:0 42px 120px rgba(15,23,42,.34);
}
.portal-file-preview-head,
.portal-file-preview-foot{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  padding:14px 16px;
  background:color-mix(in srgb,var(--card-surface) 96%,transparent);
}
.portal-file-preview-head{border-bottom:1px solid var(--card-border)}
.portal-file-preview-foot{border-top:1px solid var(--card-border)}
.portal-file-preview-heading{display:flex;align-items:center;gap:11px;min-width:0}
.portal-file-preview-icon{
  width:40px;height:40px;display:grid;place-items:center;flex:0 0 auto;
  border-radius:14px;background:var(--theme-accent-soft);color:var(--theme-accent);
  border:1px solid var(--theme-accent-line)
}
.portal-file-preview-heading>div{min-width:0}
.portal-file-preview-heading strong,
.portal-file-preview-heading small{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.portal-file-preview-heading strong{font:800 .92rem var(--font-display);color:var(--text-primary)}
.portal-file-preview-heading small{margin-top:3px;font-size:.68rem;color:var(--text-muted)}
.portal-file-preview-close{
  width:40px;height:40px;display:grid;place-items:center;flex:0 0 auto;
  border-radius:13px;border:1px solid var(--card-border);background:var(--card-surface);
  color:var(--text-primary);cursor:pointer
}
.portal-file-preview-close:hover{background:var(--theme-accent-soft);color:var(--theme-accent)}
.portal-file-preview-stage{
  position:relative;
  min-width:0;
  min-height:0;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:auto;
  padding:22px;
  background:
    radial-gradient(circle at 20% 0%,color-mix(in srgb,var(--theme-accent-soft) 58%,transparent),transparent 28%),
    color-mix(in srgb,var(--card-surface) 90%,#eef3f8 10%);
}
.portal-file-preview-image{
  display:block;
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:100%!important;
  object-fit:contain!important;
  border-radius:16px;
  box-shadow:0 18px 56px rgba(15,23,42,.18);
  background:#fff;
}
.portal-file-preview-frame{
  display:block;
  width:100%;
  height:100%;
  min-height:420px;
  border:0;
  border-radius:16px;
  background:#fff;
  box-shadow:0 18px 56px rgba(15,23,42,.14);
}
.portal-file-preview-video{
  display:block;
  width:auto;
  height:auto;
  max-width:100%;
  max-height:100%;
  border-radius:16px;
  background:#05070b;
  box-shadow:0 18px 56px rgba(15,23,42,.22)
}
.portal-file-preview-unsupported{
  width:min(520px,100%);
  display:grid;
  place-items:center;
  text-align:center;
  padding:42px 26px;
  border:1px solid var(--card-border);
  border-radius:24px;
  background:color-mix(in srgb,var(--card-surface) 96%,var(--theme-accent-soft));
  box-shadow:var(--shadow-soft)
}
.portal-file-preview-unsupported-icon{
  width:72px;height:72px;display:grid;place-items:center;margin-bottom:16px;
  border-radius:22px;background:var(--theme-accent-soft);color:var(--theme-accent)
}
.portal-file-preview-unsupported strong{font:800 1rem var(--font-display);color:var(--text-primary)}
.portal-file-preview-unsupported p{max-width:390px;margin-top:8px;color:var(--text-muted);font-size:.78rem;line-height:1.55}
.portal-file-preview-fileinfo{min-width:0}
.portal-file-preview-fileinfo strong,
.portal-file-preview-fileinfo span{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.portal-file-preview-fileinfo strong{max-width:540px;font-size:.78rem;color:var(--text-primary)}
.portal-file-preview-fileinfo span{margin-top:3px;font-size:.65rem;color:var(--text-muted)}
.portal-file-preview-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
.portal-file-preview-actions button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:40px}

[data-theme="obsidian"] .portal-file-preview-shell{
  background:rgba(10,16,27,.98);
  border-color:rgba(255,255,255,.12)
}
[data-theme="obsidian"] .portal-file-preview-head,
[data-theme="obsidian"] .portal-file-preview-foot{background:rgba(12,19,31,.96);border-color:rgba(255,255,255,.09)}
[data-theme="obsidian"] .portal-file-preview-stage{background:radial-gradient(circle at 20% 0%,rgba(70,104,180,.12),transparent 28%),#080e18}
[data-theme="obsidian"] .portal-file-preview-close{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.1);color:#eef4ff}
[data-theme="obsidian"] .portal-file-preview-unsupported{background:rgba(255,255,255,.04);border-color:rgba(255,255,255,.09)}

@media(max-width:760px){
  .portal-file-preview-backdrop{padding:0}
  .portal-file-preview-shell{width:100vw;height:100dvh;border-radius:0;border:0}
  .portal-file-preview-head{padding:calc(10px + env(safe-area-inset-top)) 12px 10px}
  .portal-file-preview-stage{padding:10px}
  .portal-file-preview-foot{
    padding:10px 12px calc(10px + env(safe-area-inset-bottom));
    align-items:stretch;
    flex-direction:column;
  }
  .portal-file-preview-fileinfo strong{max-width:100%}
  .portal-file-preview-actions{width:100%}
  .portal-file-preview-actions button{flex:1}
  .portal-file-preview-frame{min-height:0;height:100%}
}

/* ========================================================================== 
   V14.18 — NOTIFICATIONS PREMIUM + OFFRES DU STUDIO
   ========================================================================== */

/* ---------- Toasts premium : contraste garanti, pile en haut ---------- */
.toast-stack{
  position:fixed!important;
  top:92px!important;
  right:22px!important;
  bottom:auto!important;
  width:min(390px,calc(100vw - 28px))!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  z-index:6200!important;
  pointer-events:none!important;
}
.toast-pill{
  position:relative!important;
  width:100%!important;
  min-height:62px!important;
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto auto!important;
  align-items:center!important;
  gap:10px!important;
  padding:10px 10px 10px 11px!important;
  border-radius:18px!important;
  border:1px solid rgba(255,255,255,.10)!important;
  background:linear-gradient(145deg,rgba(12,19,32,.985),rgba(20,30,47,.975))!important;
  color:#f8fafc!important;
  -webkit-text-fill-color:#f8fafc!important;
  box-shadow:0 22px 58px rgba(2,8,23,.32),inset 0 1px 0 rgba(255,255,255,.05)!important;
  backdrop-filter:blur(24px) saturate(1.2)!important;
  pointer-events:auto!important;
  opacity:1!important;
  transform:translateY(0)!important;
  animation:nexusToastEnter .28s cubic-bezier(.16,1,.3,1)!important;
  overflow:hidden!important;
  text-align:left!important;
}
.toast-pill::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:999px;background:var(--theme-accent)!important}
.toast-pill.toast-danger::before{background:#fb7185!important}.toast-pill.toast-finance::before{background:#f7c96a!important}.toast-pill.toast-message::before{background:#60a5fa!important}.toast-pill.toast-calendar::before{background:#a78bfa!important}
.toast-pill.is-actionable{cursor:pointer!important}
.toast-pill.is-actionable:hover{transform:translateY(-2px)!important;box-shadow:0 28px 66px rgba(2,8,23,.38)!important;border-color:rgba(255,255,255,.16)!important}
.toast-icon{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.08);color:#e8f1ff!important;flex:0 0 auto}
.toast-finance .toast-icon{color:#ffe099!important;background:rgba(247,201,106,.10)!important}.toast-danger .toast-icon{color:#fecdd3!important;background:rgba(251,113,133,.10)!important}.toast-message .toast-icon{color:#bfdbfe!important;background:rgba(96,165,250,.11)!important}.toast-calendar .toast-icon{color:#ddd6fe!important;background:rgba(167,139,250,.11)!important}
.toast-copy{display:flex!important;flex-direction:column!important;gap:3px!important;min-width:0!important;color:#f8fafc!important;-webkit-text-fill-color:#f8fafc!important}
.toast-copy strong{display:block!important;font:800 .70rem/1.35 var(--font-ui)!important;color:#f8fafc!important;-webkit-text-fill-color:#f8fafc!important;white-space:normal!important;overflow-wrap:anywhere!important}
.toast-copy small{display:block!important;font:650 .55rem/1.25 var(--font-ui)!important;color:rgba(226,232,240,.66)!important;-webkit-text-fill-color:rgba(226,232,240,.66)!important;text-transform:uppercase!important;letter-spacing:.06em!important}
.toast-open-icon{color:rgba(226,232,240,.72)!important;margin:0!important}
.toast-dismiss{width:28px;height:28px;border:0;border-radius:9px;display:grid;place-items:center;background:transparent;color:rgba(226,232,240,.64);cursor:pointer;transition:.16s ease}.toast-dismiss:hover{background:rgba(255,255,255,.08);color:#fff}
.toast-pill.toast-leaving{opacity:0!important;transform:translateX(18px) scale(.98)!important;transition:opacity .24s ease,transform .24s ease!important}
@keyframes nexusToastEnter{from{opacity:0;transform:translateX(18px) scale(.97)}to{opacity:1;transform:none}}

/* ---------- Studio Offers ---------- */
.studio-offers-suite{margin-top:34px;padding:22px;border:1px solid color-mix(in srgb,var(--theme-accent) 10%,var(--card-border));border-radius:28px;background:linear-gradient(145deg,color-mix(in srgb,var(--card-surface) 97%,var(--theme-accent-soft)),var(--card-surface));box-shadow:var(--shadow-soft);overflow:hidden}
.studio-offers-head{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px}.studio-offers-heading{display:flex;align-items:flex-start;gap:13px;min-width:0}.studio-offers-crown{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;flex:0 0 auto;background:linear-gradient(135deg,var(--theme-accent-soft),color-mix(in srgb,var(--theme-accent) 18%,var(--card-surface)));border:1px solid var(--theme-accent-line);color:var(--theme-accent);box-shadow:0 10px 24px color-mix(in srgb,var(--theme-accent) 10%,transparent)}.studio-offers-heading h2{font:800 1.2rem/1.2 var(--font-display);color:var(--text-primary);margin:3px 0 4px}.studio-offers-heading p{font-size:.72rem;color:var(--text-muted);line-height:1.45;max-width:620px}
.studio-offers-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:stretch}
.studio-offer-card{position:relative;display:flex;flex-direction:column;min-width:0;border:1px solid color-mix(in srgb,var(--theme-accent) 11%,var(--card-border));border-radius:22px;background:var(--card-surface);overflow:hidden;box-shadow:0 12px 30px rgba(15,23,42,.06);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}.studio-offer-card:hover{transform:translateY(-4px);border-color:var(--theme-accent-line);box-shadow:0 20px 44px color-mix(in srgb,var(--theme-accent) 10%,rgba(15,23,42,.08))}.studio-offer-card.is-recommended{border-color:color-mix(in srgb,var(--theme-accent) 52%,var(--card-border));box-shadow:0 18px 46px color-mix(in srgb,var(--theme-accent) 15%,rgba(15,23,42,.08))}
.studio-offer-recommended{position:absolute;z-index:3;right:12px;top:12px;padding:6px 9px;border-radius:999px;background:var(--theme-accent);color:var(--theme-on-accent);font:900 .50rem/1 var(--font-ui);letter-spacing:.08em;box-shadow:0 8px 18px color-mix(in srgb,var(--theme-accent) 24%,transparent)}
.studio-offer-top{min-height:174px;padding:22px 17px 18px;display:flex;flex-direction:column;align-items:center;text-align:center;color:#f8fafc;background:radial-gradient(circle at 50% 0%,color-mix(in srgb,var(--theme-accent) 22%,transparent),transparent 50%),linear-gradient(150deg,#121824,#202a3a)}.studio-offer-icon{width:46px;height:46px;border-radius:16px;display:grid;place-items:center;margin-bottom:12px;border:1px solid color-mix(in srgb,var(--theme-accent) 50%,rgba(255,255,255,.14));background:color-mix(in srgb,var(--theme-accent) 12%,rgba(255,255,255,.04));color:color-mix(in srgb,var(--theme-accent) 72%,white);box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}.studio-offer-top h3{font:800 1.15rem/1.1 var(--font-display);letter-spacing:.02em;margin:0;color:#fff}.studio-offer-top p{font:600 .66rem/1.45 var(--font-ui);color:rgba(241,245,249,.76);margin:8px 0 0;max-width:260px}
.studio-offer-features{flex:1;padding:17px 16px 14px;background:color-mix(in srgb,var(--card-surface) 97%,var(--theme-accent-soft))}.studio-offer-features ul{display:flex;flex-direction:column;gap:9px;margin:0;padding:0;list-style:none}.studio-offer-features li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px;align-items:start;color:var(--text-primary);font-size:.66rem;line-height:1.35}.studio-offer-features li svg{margin-top:1px;color:var(--theme-accent)}
.studio-offer-price{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:92px;padding:13px;background:linear-gradient(150deg,#101722,#1b2534);color:#fff;border-top:1px solid rgba(255,255,255,.05)}.studio-offer-price strong{font:800 clamp(1.55rem,2.4vw,2.2rem)/1 var(--font-display);color:color-mix(in srgb,var(--theme-accent) 72%,white);letter-spacing:-.03em}.studio-offer-price span{display:flex;align-items:center;gap:6px;margin-top:8px;color:rgba(241,245,249,.75);font-size:.62rem;font-weight:700}
.studio-offer-description{min-height:79px;padding:14px 15px;display:flex;align-items:center;justify-content:center;text-align:center;color:var(--text-muted);font-size:.63rem;line-height:1.45;border-top:1px solid var(--card-border);background:var(--card-surface)}
.studio-offer-actions{display:grid;grid-template-columns:minmax(0,1fr) repeat(3,34px);gap:6px;padding:11px;border-top:1px solid var(--card-border);background:color-mix(in srgb,var(--card-surface) 96%,var(--theme-accent-soft))}.studio-offer-primary{min-width:0;height:34px;border:1px solid var(--theme-accent-line);border-radius:11px;background:var(--theme-accent-soft);color:var(--theme-accent);font:800 .56rem var(--font-ui);display:flex;align-items:center;justify-content:center;gap:5px;cursor:pointer;transition:.18s ease}.studio-offer-primary:hover{background:var(--theme-accent);color:var(--theme-on-accent);transform:translateY(-1px)}.studio-offer-actions .btn-icon-ghost{width:34px;height:34px;border:1px solid var(--card-border);border-radius:11px;background:var(--card-surface)}
.studio-offers-empty{grid-column:1/-1;padding:34px;text-align:center;border:1px dashed var(--card-border);border-radius:20px;color:var(--text-muted);font-size:.72rem}
.proj-offer-chip{display:inline-flex!important;align-items:center;gap:5px;width:max-content;margin-top:5px;padding:4px 7px;border-radius:999px;background:var(--theme-accent-soft);border:1px solid var(--theme-accent-line);color:var(--theme-accent)!important;font-size:.52rem!important;font-weight:850!important;letter-spacing:.04em}

/* Modal édition offre */
.studio-offer-modal-card{width:min(680px,calc(100vw - 28px));max-height:min(86vh,820px);overflow:auto}.studio-offer-form{display:flex;flex-direction:column;gap:12px}.studio-offer-form label,.studio-offer-assign-form label{display:grid;gap:6px}.studio-offer-form label>span,.studio-offer-assign-form label>span{font-size:.62rem;font-weight:800;color:var(--text-muted)}.studio-offer-description-input{resize:vertical;min-height:70px}.studio-offer-recommended-toggle{display:flex!important;align-items:center!important;gap:8px!important;padding:10px 12px;border:1px solid var(--card-border);border-radius:14px;background:color-mix(in srgb,var(--card-surface) 96%,var(--theme-accent-soft));cursor:pointer}.studio-offer-recommended-toggle input{accent-color:var(--theme-accent)}.studio-offer-recommended-toggle span{display:flex!important;align-items:center;gap:7px;color:var(--text-primary)!important}
.studio-offer-feature-editor{padding:12px;border:1px solid var(--card-border);border-radius:17px;background:color-mix(in srgb,var(--card-surface) 97%,var(--theme-accent-soft))}.studio-offer-feature-editor-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:10px}.studio-offer-feature-editor-head>div{display:flex;flex-direction:column;gap:2px}.studio-offer-feature-editor-head span{font-size:.58rem;font-weight:900;letter-spacing:.09em;color:var(--text-primary)}.studio-offer-feature-editor-head small{font-size:.58rem;color:var(--text-muted)}.studio-offer-feature-list{display:flex;flex-direction:column;gap:7px}.studio-offer-feature-row{display:grid;grid-template-columns:auto minmax(0,1fr) repeat(3,32px);gap:6px;align-items:center}.studio-offer-feature-handle{color:var(--text-light);display:grid;place-items:center}.studio-offer-feature-row .modern-input{min-height:38px}.studio-offer-feature-row .btn-icon-ghost{width:32px;height:32px;border:1px solid var(--card-border);border-radius:10px;background:var(--card-surface)}.studio-offer-modal-actions{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.studio-offer-assign-card{width:min(500px,calc(100vw - 28px))}.studio-offer-assign-form{display:flex;flex-direction:column;gap:12px}.studio-offer-assign-note{display:flex;align-items:flex-start;gap:9px;padding:12px;border-radius:14px;background:var(--theme-accent-soft);border:1px solid var(--theme-accent-line);color:var(--text-muted);font-size:.64rem;line-height:1.45}.studio-offer-assign-note svg{color:var(--theme-accent);flex:0 0 auto;margin-top:1px}

[data-theme="obsidian"] .studio-offers-suite{background:linear-gradient(145deg,rgba(15,23,37,.94),rgba(9,15,25,.96));border-color:rgba(255,255,255,.10)}
[data-theme="obsidian"] .studio-offer-card{background:#111a29;border-color:rgba(255,255,255,.10)}
[data-theme="obsidian"] .studio-offer-features,[data-theme="obsidian"] .studio-offer-description,[data-theme="obsidian"] .studio-offer-actions{background:#111a29;border-color:rgba(255,255,255,.08)}
[data-theme="obsidian"] .studio-offer-actions .btn-icon-ghost{background:#162133;border-color:rgba(255,255,255,.10)}

@media(max-width:1180px){.studio-offers-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
  .toast-stack{top:calc(72px + env(safe-area-inset-top))!important;left:10px!important;right:10px!important;width:auto!important}
  .toast-pill{min-height:58px!important;border-radius:16px!important;padding:9px!important}.toast-copy strong{font-size:.67rem!important}.toast-copy small{font-size:.52rem!important}
  .studio-offers-suite{margin-top:24px;padding:16px 0 16px 14px;border-radius:22px}.studio-offers-head{padding-right:14px;align-items:flex-start}.studio-offers-heading{gap:10px}.studio-offers-crown{width:40px;height:40px;border-radius:13px}.studio-offers-heading h2{font-size:1.05rem}.studio-offers-heading p{font-size:.66rem}.studio-offers-head .btn-glow-primary{flex:0 0 auto;padding:10px 12px;font-size:.62rem}
  .studio-offers-grid{display:flex;gap:12px;overflow-x:auto;scroll-snap-type:x mandatory;padding:2px 14px 12px 0;scrollbar-width:none}.studio-offers-grid::-webkit-scrollbar{display:none}.studio-offer-card{flex:0 0 min(82vw,320px);scroll-snap-align:start}.studio-offer-top{min-height:158px}.studio-offer-actions{grid-template-columns:minmax(0,1fr) repeat(3,34px)}
  .studio-offer-modal-card{max-height:92dvh}.studio-offer-feature-row{grid-template-columns:auto minmax(0,1fr) 30px 30px 30px}.studio-offer-feature-row .btn-icon-ghost{width:30px;height:30px}.studio-offer-modal-actions{position:sticky;bottom:-1px;padding:10px 0 2px;background:linear-gradient(180deg,transparent,var(--card-surface) 25%)}
}
@media(max-width:500px){.studio-offers-head{flex-direction:column}.studio-offers-head .btn-glow-primary{width:calc(100% - 14px);justify-content:center}.studio-offer-card{flex-basis:88vw}.studio-offer-feature-editor-head{align-items:flex-start;flex-direction:column}.studio-offer-feature-editor-head .btn-secondary{width:100%;justify-content:center}.studio-offer-modal-actions{display:grid;grid-template-columns:1fr 1fr}.studio-offer-modal-actions button{justify-content:center}}

/* V14.19 — Notification audience / privacy */
.notification-audience-card{margin-top:16px}
.notification-audience-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:14px}
.notification-audience-zone{display:grid;grid-template-columns:auto 1fr;gap:11px;align-items:start;padding:14px;border-radius:18px;border:1px solid var(--card-border);background:color-mix(in srgb,var(--card-surface) 94%,var(--theme-accent-soft))}
.notification-audience-zone.private{border-color:color-mix(in srgb,var(--text-muted) 20%,var(--card-border))}
.notification-audience-zone.client{border-color:color-mix(in srgb,#10b981 26%,var(--card-border));background:color-mix(in srgb,var(--card-surface) 92%,#d1fae5)}
.notification-audience-icon{width:36px;height:36px;border-radius:12px;display:grid;place-items:center;background:var(--theme-accent-soft);color:var(--theme-accent)}
.notification-audience-zone.client .notification-audience-icon{background:rgba(16,185,129,.12);color:#059669}
.notification-audience-zone strong{display:block;font-size:.8rem;color:var(--text-primary);margin-bottom:4px}
.notification-audience-zone p{font-size:.68rem;line-height:1.55;color:var(--text-muted);margin:0}
.nexus-client-session .notification-filter-bar [data-notification-filter="projects"],
.nexus-client-session .notification-filter-bar [data-notification-filter="tasks"],
.nexus-client-session .notification-filter-bar [data-notification-filter="finance"]{display:none!important}
@media(max-width:760px){.notification-audience-grid{grid-template-columns:1fr}}

/* ========================================================================== 
   V14.20 — Couvertures de sections du portail modifiables
   ========================================================================== */
.portal-delivery-cover{position:relative;overflow:hidden;background:none!important;isolation:isolate}
.portal-delivery-cover-media{position:absolute;inset:-2%;width:104%;height:104%;object-fit:cover;object-position:center center;z-index:0;transition:transform .24s ease,object-position .24s ease;will-change:transform}
.portal-delivery-cover::after{z-index:1!important}
.portal-delivery-cover-copy{z-index:2!important}
.portal-section-cover-tools{position:absolute;top:10px;right:10px;z-index:4;display:flex;align-items:center;gap:4px;padding:5px;border-radius:14px;background:rgba(10,16,27,.72);border:1px solid rgba(255,255,255,.16);box-shadow:0 12px 28px rgba(2,8,23,.24);backdrop-filter:blur(14px)}
.portal-section-cover-tools button,.portal-section-cover-tools select{height:30px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:#fff;border-radius:9px;font:700 .62rem var(--font-ui);outline:none}
.portal-section-cover-tools button{min-width:30px;padding:0 7px;display:inline-flex;align-items:center;justify-content:center;gap:5px;cursor:pointer}
.portal-section-cover-tools button:first-child{padding:0 9px}
.portal-section-cover-tools select{width:70px;padding:0 5px;cursor:pointer;color-scheme:dark}
.portal-section-cover-tools select option{background:#101827;color:#fff}
.portal-section-cover-tools button:hover,.portal-section-cover-tools select:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.28)}
.portal-section-cover-tools svg{flex:0 0 auto}
@media(max-width:850px){.portal-section-cover-tools{top:9px;right:9px;max-width:calc(100% - 18px);flex-wrap:wrap}.portal-section-cover-tools button:first-child span{display:none}.portal-section-cover-tools select{width:74px}}
@media(max-width:520px){.portal-section-cover-tools{gap:3px;padding:4px;border-radius:12px}.portal-section-cover-tools button,.portal-section-cover-tools select{height:28px}.portal-section-cover-tools button{min-width:28px;padding:0 6px}.portal-section-cover-tools select{width:66px;font-size:.58rem}}

/* ========================================================================== 
   V14.21 — Photos de sections propres et simplement remplaçables
   ========================================================================== */
.portal-delivery-cover-wrap{
  min-width:0;
  display:flex;
  flex-direction:column;
  background:transparent;
}
.portal-delivery-cover{
  min-height:190px;
  position:relative;
  overflow:hidden;
  background:none!important;
}
.portal-delivery-cover::after{display:none!important;content:none!important}
.portal-delivery-cover-media{
  position:absolute!important;
  inset:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  transform:none!important;
  filter:none!important;
}
/* Aucun texte ni contrôle superposé sur les photos */
.portal-delivery-cover-copy,
.portal-delivery-cover-edit,
.portal-section-cover-tools{display:none!important}
.portal-section-photo-change{
  width:100%;
  min-height:36px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:8px 10px;
  border:0;
  border-top:1px solid var(--card-border);
  background:color-mix(in srgb,var(--card-surface) 94%,var(--theme-accent-soft));
  color:var(--text-muted);
  font:800 .66rem var(--font-ui);
  cursor:pointer;
  transition:var(--transition-smooth);
}
.portal-section-photo-change:hover{
  color:var(--theme-accent);
  background:var(--theme-accent-soft);
}
.portal-section-photo-change svg{flex:0 0 auto}
.nexus-client-session .portal-section-photo-change{display:none!important}
@media(max-width:850px){
  .portal-delivery-cover{min-height:180px!important}
  .portal-section-photo-change{min-height:42px;font-size:.72rem}
}

/* ========================================================================== 
   D&A NEXUS V14.22 — COMPTES & INTÉGRATIONS OAUTH
   ========================================================================== */
.nexus-integrations-security-note{display:grid;grid-template-columns:auto 1fr auto;gap:14px;align-items:center;padding:16px 18px;margin-bottom:16px}
.nexus-integrations-security-icon{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:var(--settings-soft);color:var(--settings-accent);border:1px solid var(--settings-line)}
.nexus-integrations-security-note strong{font:800 .88rem var(--font-display);color:var(--text-primary)}
.nexus-integrations-security-note p{margin-top:4px;color:var(--text-muted);font-size:.75rem;line-height:1.55}
.nexus-integrations-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.nexus-integration-card{padding:17px;min-width:0;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}
.nexus-integration-card.is-connected{border-color:color-mix(in srgb,var(--settings-accent) 42%,var(--card-border));box-shadow:0 16px 42px color-mix(in srgb,var(--settings-accent) 9%,transparent)}
.nexus-integration-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px}
.nexus-integration-logo{width:40px;height:40px;border-radius:13px;display:flex;align-items:center;justify-content:center;background:var(--settings-soft);border:1px solid var(--settings-line);color:var(--settings-accent)}
.nexus-integration-head h4{font:800 .9rem var(--font-display);color:var(--text-primary)}
.nexus-integration-head p{margin-top:3px;font-size:.68rem;color:var(--text-muted)}
.nexus-integration-status{display:inline-flex;align-items:center;justify-content:center;min-height:27px;padding:5px 9px;border-radius:999px;border:1px solid var(--card-border);background:rgba(0,0,0,.025);font-size:.62rem;font-weight:800;color:var(--text-muted);white-space:nowrap}
.nexus-integration-status.is-connected{background:color-mix(in srgb,#35b97e 12%,var(--card-surface));border-color:color-mix(in srgb,#35b97e 35%,var(--card-border));color:#25845c}
.nexus-integration-status.is-reference{background:color-mix(in srgb,#d79a35 12%,var(--card-surface));border-color:color-mix(in srgb,#d79a35 35%,var(--card-border));color:#9b6b1f}
.nexus-integration-status.is-disabled{opacity:.72}
.nexus-integration-account{display:flex;align-items:center;gap:10px;margin:14px 0 0;padding:11px;border:1px solid var(--card-border);border-radius:13px;background:rgba(0,0,0,.018)}
.nexus-integration-avatar{width:36px;height:36px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:var(--settings-soft);background-position:center;background-size:cover;color:var(--settings-accent);font-weight:900}
.nexus-integration-account strong,.nexus-integration-account small{display:block;max-width:310px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.nexus-integration-account strong{font-size:.75rem;color:var(--text-primary)}
.nexus-integration-account small{margin-top:3px;font-size:.61rem;color:var(--text-muted)}
.nexus-integration-reference{display:block;margin-top:14px}
.nexus-integration-reference>span{display:block;margin-bottom:6px;font-size:.64rem;font-weight:800;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}
.nexus-integration-reference>div{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:7px}
.nexus-integration-reference .modern-input{min-width:0;height:39px;font-size:.72rem}
.nexus-integration-reference .btn-secondary{min-height:39px;padding-inline:12px}
.nexus-integration-actions{display:flex;gap:8px;margin-top:12px}
.nexus-integration-actions>button{min-height:39px;flex:1;display:flex;align-items:center;justify-content:center;gap:7px}
.nexus-integration-warning{display:flex;align-items:flex-start;gap:7px;margin-top:10px;padding:9px 10px;border-radius:10px;background:rgba(0,0,0,.025);color:var(--text-muted);font-size:.65rem;line-height:1.45}
.nexus-integration-card.is-disabled .nexus-integration-logo{opacity:.65}
.nexus-mini-spinner{display:inline-block;width:14px;height:14px;border-radius:50%;border:2px solid currentColor;border-right-color:transparent;animation:nexusOauthSpin .7s linear infinite}
@keyframes nexusOauthSpin{to{transform:rotate(360deg)}}
[data-theme="obsidian"] .nexus-integration-status{background:rgba(255,255,255,.04)}
[data-theme="obsidian"] .nexus-integration-status.is-connected{color:#86e1b9;background:rgba(63,190,132,.1)}
[data-theme="obsidian"] .nexus-integration-status.is-reference{color:#f3c879;background:rgba(222,164,65,.1)}
@media(max-width:900px){.nexus-integrations-grid{grid-template-columns:1fr}.nexus-integrations-security-note{grid-template-columns:auto 1fr}.nexus-integrations-security-note>.settings-status-pill{grid-column:1/-1;justify-self:start}}
@media(max-width:560px){.nexus-integration-head{grid-template-columns:auto minmax(0,1fr)}.nexus-integration-status{grid-column:1/-1;justify-self:start}.nexus-integration-reference>div{grid-template-columns:1fr}.nexus-integrations-security-note{grid-template-columns:1fr}.nexus-integrations-security-icon{display:none}}
\n\n/* ==========================================================================\n   D&A NEXUS V14.25 — SETTINGS DESKTOP OS EXPERIENCE\n   Inspiré des principes d’un OS premium, sans reproduire macOS.\n   ========================================================================== */\n#view-parametres{--settings-window-bg:color-mix(in srgb,var(--card-surface) 90%,transparent);--settings-window-line:color-mix(in srgb,var(--card-border) 82%,transparent)}\n.settings-suite{max-width:1500px!important;margin:0 auto!important;padding-bottom:28px!important}\n.settings-suite>.settings-hero{padding:22px 24px!important;min-height:auto!important;margin-bottom:12px!important}\n.settings-suite>.settings-overview-grid{margin-bottom:12px!important}\n.settings-os-window{border:1px solid var(--settings-window-line);border-radius:26px;background:linear-gradient(145deg,color-mix(in srgb,var(--card-surface) 92%,transparent),color-mix(in srgb,var(--card-surface) 82%,transparent));box-shadow:0 28px 70px rgba(23,28,42,.10),inset 0 1px 0 rgba(255,255,255,.45);overflow:visible;backdrop-filter:blur(26px) saturate(1.08);-webkit-backdrop-filter:blur(26px) saturate(1.08)}\n.settings-os-toolbar{height:72px;display:grid;grid-template-columns:auto minmax(170px,1fr) minmax(260px,420px) auto;gap:16px;align-items:center;padding:0 18px;border-bottom:1px solid var(--settings-window-line);background:linear-gradient(180deg,color-mix(in srgb,var(--card-surface) 92%,white 8%),color-mix(in srgb,var(--card-surface) 82%,transparent));border-radius:26px 26px 0 0;position:relative;z-index:25}\n.settings-os-orbs{display:flex;gap:7px}.settings-os-orbs i{width:11px;height:11px;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(0,0,0,.08)}.settings-os-orbs i:nth-child(1){background:#8b7ca8}.settings-os-orbs i:nth-child(2){background:#d3b66c}.settings-os-orbs i:nth-child(3){background:#7f95a6}\n.settings-os-title{display:grid;gap:1px}.settings-os-title span{font-size:8px;letter-spacing:.18em;font-weight:800;color:var(--text-muted)}.settings-os-title strong{font-size:.82rem;color:var(--text-primary)}\n.settings-os-search-wrap{height:40px;border:1px solid var(--card-border);border-radius:13px;background:color-mix(in srgb,var(--card-surface) 86%,transparent);display:flex;align-items:center;gap:9px;padding:0 12px;position:relative;box-shadow:inset 0 1px 0 rgba(255,255,255,.35)}\n.settings-os-search-wrap>i{color:var(--text-muted);flex:none}.settings-os-search-wrap input{border:0!important;outline:0!important;background:transparent!important;color:var(--text-primary)!important;width:100%;font:600 12px 'Plus Jakarta Sans',sans-serif}.settings-os-search-wrap input::placeholder{color:color-mix(in srgb,var(--text-muted) 75%,transparent)}\n.settings-search-results{position:absolute;top:48px;left:0;right:0;z-index:60;padding:7px;background:color-mix(in srgb,var(--card-surface) 96%,transparent);border:1px solid var(--card-border);border-radius:15px;box-shadow:0 24px 55px rgba(16,24,40,.18);backdrop-filter:blur(24px)}\n.settings-search-results button{width:100%;border:0;background:transparent;color:var(--text-primary);padding:10px 11px;border-radius:10px;display:grid;gap:2px;text-align:left;cursor:pointer}.settings-search-results button:hover{background:color-mix(in srgb,var(--theme-accent) 8%,transparent)}.settings-search-results strong{font-size:11px}.settings-search-results span{font-size:9px;color:var(--text-muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.settings-search-empty{padding:12px;font-size:10px;color:var(--text-muted)}\n.settings-category-dropdown{position:relative}.settings-category-trigger{height:40px;min-width:178px;border-radius:13px;border:1px solid var(--card-border);background:color-mix(in srgb,var(--card-surface) 90%,transparent);color:var(--text-primary);display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 12px;font:700 11px 'Plus Jakarta Sans',sans-serif;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.4)}.settings-category-trigger svg{transition:transform .2s ease}.settings-category-trigger.open svg{transform:rotate(180deg)}\n.settings-category-menu{position:absolute;right:0;top:48px;width:270px;z-index:65;padding:7px;border:1px solid var(--card-border);border-radius:16px;background:color-mix(in srgb,var(--card-surface) 96%,transparent);box-shadow:0 25px 60px rgba(16,24,40,.19);backdrop-filter:blur(28px) saturate(1.1)}.settings-category-menu[hidden]{display:none}.settings-category-menu button{width:100%;border:0;background:transparent;color:var(--text-primary);min-height:38px;padding:0 9px;border-radius:10px;display:grid;grid-template-columns:22px 1fr auto;align-items:center;gap:7px;text-align:left;cursor:pointer;font:700 10px 'Plus Jakarta Sans',sans-serif}.settings-category-menu button:hover{background:color-mix(in srgb,var(--theme-accent) 9%,transparent)}.settings-category-menu button b{font-size:8px;font-weight:600;color:var(--text-muted)}\n.settings-workbench{display:grid;grid-template-columns:230px minmax(0,1fr);height:min(76vh,900px);min-height:620px;overflow:hidden}\n.settings-workbench>.settings-nav{position:relative!important;top:auto!important;margin:0!important;padding:14px!important;border:0!important;border-right:1px solid var(--settings-window-line)!important;border-radius:0!important;background:color-mix(in srgb,var(--card-surface) 72%,transparent)!important;display:flex!important;flex-direction:column!important;align-items:stretch!important;justify-content:flex-start!important;gap:5px!important;overflow:auto!important;box-shadow:none!important}\n.settings-workbench>.settings-nav:before{content:'CATÉGORIES';display:block;padding:7px 9px 9px;font-size:8px;font-weight:800;letter-spacing:.16em;color:var(--text-muted)}\n.settings-workbench .settings-nav-btn{width:100%!important;min-height:42px!important;justify-content:flex-start!important;border-radius:12px!important;padding:0 10px!important;gap:9px!important;white-space:normal!important;text-align:left!important;border:1px solid transparent!important;background:transparent!important;color:var(--text-muted)!important;box-shadow:none!important;transition:.18s ease!important}\n.settings-workbench .settings-nav-btn:hover{background:color-mix(in srgb,var(--card-surface) 76%,var(--theme-accent-soft))!important;color:var(--text-primary)!important}.settings-workbench .settings-nav-btn.active{background:linear-gradient(135deg,color-mix(in srgb,var(--theme-accent) 12%,var(--card-surface)),color-mix(in srgb,var(--theme-accent) 5%,var(--card-surface)))!important;color:var(--text-primary)!important;border-color:color-mix(in srgb,var(--theme-accent) 22%,var(--card-border))!important;box-shadow:0 8px 22px rgba(18,28,45,.055)!important}\n.settings-workbench>.settings-panels{min-width:0;overflow-y:auto;overflow-x:hidden;padding:18px 18px 34px;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--theme-accent) 28%,transparent) transparent;overscroll-behavior:contain}\n.settings-workbench .settings-panel{display:none!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:0!important;animation:none!important}.settings-workbench .settings-panel.active{display:block!important;animation:settingsPaneIn .26s cubic-bezier(.22,.61,.36,1) both!important}\n@keyframes settingsPaneIn{from{opacity:0;transform:translateY(7px) scale(.995)}to{opacity:1;transform:none}}\n.settings-workbench .settings-section-head{position:sticky;top:-18px;z-index:8;margin:-18px -18px 16px!important;padding:22px 18px 15px!important;background:linear-gradient(180deg,color-mix(in srgb,var(--card-surface) 96%,transparent) 0%,color-mix(in srgb,var(--card-surface) 93%,transparent) 76%,transparent 100%);backdrop-filter:blur(18px)}\n.settings-quick-console{padding:16px 17px!important;margin-bottom:14px!important;border-radius:18px!important;background:linear-gradient(140deg,color-mix(in srgb,var(--card-surface) 94%,var(--theme-accent-soft)),color-mix(in srgb,var(--card-surface) 91%,transparent))!important}\n.settings-quick-console-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.settings-quick-console-head h4{font-size:.88rem;margin:2px 0 0}.settings-quick-console-head>span{display:inline-flex;align-items:center;gap:5px;font-size:9px;font-weight:800;color:var(--theme-accent);padding:6px 8px;border-radius:999px;background:color-mix(in srgb,var(--theme-accent) 9%,transparent)}\n.settings-quick-select-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px}.settings-quick-select-grid label{display:grid;gap:5px}.settings-quick-select-grid label>span{font-size:8px;font-weight:800;letter-spacing:.08em;color:var(--text-muted);text-transform:uppercase}.settings-select-shell{height:39px;position:relative;border:1px solid var(--card-border);border-radius:11px;background:color-mix(in srgb,var(--card-surface) 92%,transparent);overflow:hidden}.settings-select-shell select{appearance:none;-webkit-appearance:none;width:100%;height:100%;padding:0 30px 0 10px;border:0;outline:0;background:transparent;color:var(--text-primary);font:700 10px 'Plus Jakarta Sans',sans-serif;cursor:pointer}.settings-select-shell>svg{position:absolute;right:9px;top:50%;transform:translateY(-50%);pointer-events:none;color:var(--text-muted)}\n.settings-direct-launch-card{min-height:auto!important}.settings-direct-launch-card .settings-card-head{margin:0!important}\n[data-theme=\"obsidian\"] .settings-os-window,[data-theme=\"obsidian\"] .settings-category-menu,[data-theme=\"obsidian\"] .settings-search-results{background:rgba(14,20,32,.95)!important;border-color:rgba(255,255,255,.1)!important}\n@media(max-width:1100px){.settings-os-toolbar{grid-template-columns:auto 1fr minmax(210px,330px)}.settings-category-dropdown{grid-column:1/-1;display:none}.settings-workbench{grid-template-columns:200px minmax(0,1fr)}.settings-quick-select-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}\n@media(max-width:820px){.settings-suite>.settings-overview-grid{display:none!important}.settings-os-window{border-radius:20px}.settings-os-toolbar{height:auto;min-height:70px;padding:12px;grid-template-columns:auto 1fr auto}.settings-os-title{display:none}.settings-os-search-wrap{grid-column:1/-1;grid-row:2}.settings-category-dropdown{display:block!important;grid-column:3;grid-row:1}.settings-category-trigger{min-width:150px}.settings-workbench{display:block;height:auto;min-height:0;overflow:visible}.settings-workbench>.settings-nav{display:none!important}.settings-workbench>.settings-panels{overflow:visible;padding:12px}.settings-workbench .settings-section-head{position:relative;top:auto;margin:0 0 12px!important;padding:10px 0!important;background:transparent!important;backdrop-filter:none}.settings-quick-select-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}\n@media(max-width:520px){.settings-os-toolbar{grid-template-columns:auto 1fr}.settings-category-dropdown{grid-column:1/-1;grid-row:3}.settings-category-trigger{width:100%}.settings-category-menu{left:0;right:0;width:auto}.settings-quick-select-grid{grid-template-columns:1fr}.settings-suite>.settings-hero{display:none!important}}\n

/* ========================================================================== 
   D&A NEXUS V14.26 — CONTROL ROOM COMPACT
   Nouvelle direction : éditoriale, compacte, sans imitation macOS.
   ========================================================================== */
#view-parametres{overflow:hidden!important;height:calc(100dvh - 96px);min-height:610px}
#view-parametres>.settings-suite{height:100%!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;display:block!important}
.settings-suite>.settings-hero,.settings-suite>.settings-overview-grid,.settings-os-window{display:none!important}
.settings-controlroom{height:100%;min-height:0;display:grid;grid-template-rows:auto auto minmax(0,1fr);border:1px solid color-mix(in srgb,var(--card-border) 90%,transparent);border-radius:26px;overflow:hidden;background:color-mix(in srgb,var(--card-surface) 93%,var(--bg-app));box-shadow:0 24px 70px rgba(44,35,42,.10);position:relative}
.settings-controlroom:before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 90% 0%,color-mix(in srgb,var(--theme-accent) 8%,transparent),transparent 32%),linear-gradient(110deg,transparent 0 58%,color-mix(in srgb,var(--theme-accent) 2.5%,transparent) 58% 100%)}
.cr-header{min-height:88px;position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 22px 14px;border-bottom:1px solid color-mix(in srgb,var(--card-border) 88%,transparent);background:color-mix(in srgb,var(--card-surface) 94%,transparent)}
.cr-brandline{display:flex;align-items:center;gap:14px;min-width:0}.cr-accent-line{width:4px;height:48px;border-radius:99px;background:linear-gradient(180deg,var(--theme-accent),#eadc16);box-shadow:0 8px 20px color-mix(in srgb,var(--theme-accent) 20%,transparent)}
.cr-kicker{display:block;font:800 8px 'Plus Jakarta Sans',sans-serif;letter-spacing:.18em;color:var(--text-muted);margin-bottom:2px}.cr-brandline h2{font-family:'Playfair Display','DM Serif Display',serif;font-size:1.52rem;line-height:1.05;margin:0;color:var(--text-primary);letter-spacing:-.02em}.cr-brandline p{font-size:.68rem;color:var(--text-muted);margin:4px 0 0}
.cr-header-tools{display:flex;align-items:center;gap:10px}.cr-search{position:relative;width:min(320px,34vw);height:39px;display:flex;align-items:center;gap:8px;padding:0 12px;border:1px solid var(--card-border);border-radius:999px;background:color-mix(in srgb,var(--bg-app) 48%,var(--card-surface));transition:.18s ease}.cr-search:focus-within{border-color:color-mix(in srgb,var(--theme-accent) 45%,var(--card-border));box-shadow:0 0 0 4px color-mix(in srgb,var(--theme-accent) 7%,transparent)}.cr-search>i{color:var(--text-muted);flex:none}.cr-search input{width:100%;border:0!important;outline:0!important;background:transparent!important;color:var(--text-primary)!important;font:650 10px 'Plus Jakarta Sans',sans-serif}.cr-search input::placeholder{color:var(--text-muted)}
.cr-mobile-category{display:none;position:relative}.cr-mobile-category .settings-category-trigger{height:39px;min-width:170px;border-radius:999px;background:var(--card-surface);border:1px solid var(--card-border);font-size:10px}.settings-category-menu{top:46px!important;border-radius:17px!important;background:color-mix(in srgb,var(--card-surface) 97%,transparent)!important;box-shadow:0 22px 60px rgba(26,30,44,.18)!important}
.cr-category-ribbon{position:relative!important;top:auto!important;z-index:2!important;margin:0!important;padding:0 16px!important;height:54px!important;display:flex!important;align-items:stretch!important;gap:0!important;overflow-x:auto!important;border:0!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 88%,transparent)!important;border-radius:0!important;background:color-mix(in srgb,var(--bg-app) 38%,var(--card-surface))!important;box-shadow:none!important;scrollbar-width:none}.cr-category-ribbon::-webkit-scrollbar{display:none}
.cr-category-ribbon .settings-nav-btn{height:54px!important;min-width:max-content!important;border:0!important;border-radius:0!important;background:transparent!important;box-shadow:none!important;color:var(--text-muted)!important;padding:0 13px!important;display:flex!important;align-items:center!important;gap:7px!important;font:750 9.5px 'Plus Jakarta Sans',sans-serif!important;position:relative!important;white-space:nowrap!important}.cr-category-ribbon .settings-nav-btn>span{font-size:7px;letter-spacing:.08em;color:color-mix(in srgb,var(--text-muted) 70%,transparent)}.cr-category-ribbon .settings-nav-btn:after{content:'';position:absolute;left:13px;right:13px;bottom:0;height:3px;border-radius:4px 4px 0 0;background:var(--theme-accent);transform:scaleX(0);transform-origin:left;transition:transform .2s ease}.cr-category-ribbon .settings-nav-btn:hover{color:var(--text-primary)!important;background:transparent!important}.cr-category-ribbon .settings-nav-btn.active{color:var(--text-primary)!important;background:transparent!important}.cr-category-ribbon .settings-nav-btn.active:after{transform:scaleX(1)}.cr-category-ribbon .settings-nav-btn.danger{margin-left:0!important}
.cr-stage{position:relative;z-index:1;min-height:0;display:grid;grid-template-columns:218px minmax(0,1fr);overflow:hidden}
.cr-context{min-height:0;padding:20px 16px 16px;border-right:1px solid color-mix(in srgb,var(--card-border) 88%,transparent);background:linear-gradient(180deg,color-mix(in srgb,var(--bg-app) 54%,var(--card-surface)),color-mix(in srgb,var(--card-surface) 92%,transparent));display:flex;flex-direction:column;gap:16px}.cr-context-top{display:grid;gap:10px}.cr-context-index{font-family:'Space Grotesk',sans-serif;font-size:2.15rem;font-weight:800;line-height:1;color:color-mix(in srgb,var(--theme-accent) 76%,var(--text-primary));letter-spacing:-.07em}.cr-context-top strong{display:block;font-family:'DM Serif Display','Playfair Display',serif;font-size:1rem;color:var(--text-primary);margin-bottom:5px}.cr-context-top p{font-size:.64rem;line-height:1.52;color:var(--text-muted);margin:0}
.cr-subnav{display:grid;gap:5px}.cr-subnav button{min-height:38px;border:1px solid transparent;border-radius:11px;background:transparent;color:var(--text-muted);padding:0 10px;text-align:left;font:750 9px 'Plus Jakarta Sans',sans-serif;cursor:pointer;transition:.16s ease}.cr-subnav button:hover{background:color-mix(in srgb,var(--theme-accent) 5%,transparent);color:var(--text-primary)}.cr-subnav button.active{background:var(--card-surface);border-color:color-mix(in srgb,var(--theme-accent) 18%,var(--card-border));color:var(--text-primary);box-shadow:0 9px 22px rgba(34,36,50,.055)}.cr-subnav-single{display:inline-flex;padding:7px 9px;border-radius:999px;background:color-mix(in srgb,var(--theme-accent) 7%,transparent);font-size:8px;font-weight:800;color:var(--theme-accent);width:max-content}.cr-context-foot{margin-top:auto;display:flex;align-items:center;gap:7px;color:var(--text-muted);font-size:7.5px;line-height:1.3}.cr-status-dot{width:7px;height:7px;border-radius:50%;background:#18b77a;box-shadow:0 0 0 4px rgba(24,183,122,.08);flex:none}
.cr-panels{min-width:0;min-height:0;height:100%;overflow:hidden!important;padding:0!important;background:color-mix(in srgb,var(--card-surface) 84%,transparent)}
.cr-panels>.settings-panel{display:none!important;height:100%;min-height:0;overflow-y:auto;overflow-x:hidden;padding:17px 18px 24px!important;margin:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--theme-accent) 24%,transparent) transparent;overscroll-behavior:contain}.cr-panels>.settings-panel.active{display:block!important;animation:crPaneIn .2s ease both!important}@keyframes crPaneIn{from{opacity:0;transform:translateX(7px)}to{opacity:1;transform:none}}
.cr-panels .settings-section-head{position:relative!important;top:auto!important;margin:0 0 13px!important;padding:0 0 12px!important;background:transparent!important;backdrop-filter:none!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 80%,transparent)}.cr-panels .settings-section-head .section-heading-tag{display:none!important}.cr-panels .settings-section-head h3{font-family:'DM Serif Display','Playfair Display',serif!important;font-size:1.15rem!important;letter-spacing:-.015em!important;margin:0 0 3px!important}.cr-panels .settings-section-head p{font-size:.66rem!important;line-height:1.45!important;margin:0!important;max-width:680px!important}.cr-panels .settings-section-head>.btn-glow-primary{min-height:34px!important;padding:0 12px!important;border-radius:999px!important;font-size:9px!important}
.cr-section-hidden{display:none!important}
/* Nouveau langage de cartes : plus éditorial, plus plat, moins tableau de bord. */
.cr-panels .spotlight-card,.cr-panels .settings-theme-card{border:1px solid color-mix(in srgb,var(--card-border) 90%,transparent)!important;background:color-mix(in srgb,var(--card-surface) 96%,transparent)!important;border-radius:16px!important;box-shadow:0 10px 28px rgba(37,35,45,.045)!important}.cr-panels .spotlight-card:hover{box-shadow:0 13px 34px rgba(37,35,45,.06)!important}.cr-panels .settings-form-card,.cr-panels .settings-control-card{padding:17px!important}.cr-panels .settings-profile-card{min-height:300px!important;padding:20px!important}.cr-panels .settings-studio-grid{grid-template-columns:235px minmax(0,1fr)!important;gap:12px!important}.cr-panels .settings-form-grid{gap:10px!important}.cr-panels .settings-form-grid label>span,.cr-panels .settings-field>span{font-size:.65rem!important}.cr-panels .modern-input{min-height:36px!important;font-size:.69rem!important;border-radius:10px!important}.cr-panels .settings-theme-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:10px!important;margin:0!important}.cr-panels .settings-theme-card{padding:9px!important}.cr-panels .settings-theme-preview{height:86px!important;border-radius:12px!important;padding:9px!important}.cr-panels .settings-theme-card>div:last-of-type{padding:8px 3px 4px!important}.cr-panels .settings-theme-card strong{font-size:.78rem!important}.cr-panels .settings-theme-card span{font-size:.62rem!important}.cr-panels .settings-quick-console{margin:0 0 11px!important;padding:12px!important;border-radius:15px!important}.cr-panels .settings-quick-select-grid{grid-template-columns:repeat(5,minmax(0,1fr))!important;gap:7px!important}.cr-panels .settings-select-shell{height:35px!important}.cr-panels .settings-two-col,.cr-panels .settings-three-col{gap:11px!important}.cr-panels .settings-three-col{grid-template-columns:repeat(3,minmax(0,1fr))!important}.cr-panels .settings-toggle-list{padding:12px!important}.cr-panels .settings-automation-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.cr-panels .settings-automation-row{min-height:62px!important;padding:11px!important;border-radius:14px!important}.cr-panels .nexus-integrations-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.cr-panels .nexus-integration-card{padding:14px!important;min-height:0!important}.cr-panels .nexus-integration-reference{margin-top:8px!important}.cr-panels .nexus-integration-reference>span{font-size:8px!important}.cr-panels .nexus-integration-actions{margin-top:8px!important;gap:7px!important}.cr-panels .settings-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}.cr-panels .settings-data-card{min-height:118px!important;padding:14px!important}.cr-panels .settings-account-grid{gap:11px!important}.cr-panels .settings-system-info,.cr-panels .settings-security-note{margin-top:10px!important;padding:13px!important}
/* Theme Studio reste puissant, mais isolé dans sa sous-section. */
.cr-panels .settings-theme-studio{margin:0!important;padding:14px!important;border-radius:18px!important}.cr-panels .theme-studio-premium{box-shadow:none!important}.cr-panels .settings-nav-cover-manager{margin:0!important}
/* Dashboard : le Réservoir créatif reste à 5 visuels et ne fait pas partie des 3 exemples métier. */
#dashboard-gallery-grid.gallery-spotlight-bento{min-height:190px}
@media(max-width:1180px){.cr-stage{grid-template-columns:190px minmax(0,1fr)}.cr-panels .settings-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.cr-panels .settings-quick-select-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:900px){#view-parametres{height:auto!important;min-height:0!important;overflow:visible!important}.settings-suite{height:auto!important;overflow:visible!important}.settings-controlroom{height:auto;min-height:660px;grid-template-rows:auto auto minmax(560px,1fr)}.cr-header{align-items:flex-start}.cr-header-tools{flex:1;justify-content:flex-end}.cr-search{width:min(300px,45vw)}.cr-category-ribbon{display:none!important}.cr-mobile-category{display:block}.cr-stage{grid-template-columns:1fr;min-height:560px}.cr-context{border-right:0;border-bottom:1px solid var(--card-border);padding:11px 13px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:10px}.cr-context-top{display:none}.cr-context-foot{display:none}.cr-subnav{display:flex;gap:6px;overflow-x:auto;max-width:100%}.cr-subnav button{white-space:nowrap;min-height:34px}.cr-panels{min-height:500px}.cr-panels>.settings-panel{height:500px}.cr-panels .settings-studio-grid{grid-template-columns:1fr!important}.cr-panels .settings-profile-card{display:none!important}}
@media(max-width:620px){.settings-controlroom{border-radius:18px}.cr-header{padding:13px;display:grid;gap:10px}.cr-brandline p{display:none}.cr-brandline h2{font-size:1.25rem}.cr-header-tools{width:100%;display:grid;grid-template-columns:1fr auto}.cr-search{width:100%}.cr-mobile-category .settings-category-trigger{min-width:132px}.cr-context{display:block;padding:9px 10px}.cr-subnav{padding-bottom:1px}.cr-panels>.settings-panel{padding:12px!important;height:520px}.cr-panels .settings-theme-grid,.cr-panels .settings-three-col,.cr-panels .settings-two-col,.cr-panels .settings-data-grid,.cr-panels .nexus-integrations-grid,.cr-panels .settings-automation-list{grid-template-columns:1fr!important}.cr-panels .settings-quick-select-grid{grid-template-columns:1fr 1fr!important}.cr-panels .settings-section-head{align-items:flex-start!important}.cr-panels .settings-section-head p{display:none}.cr-panels .settings-form-grid{grid-template-columns:1fr!important}.cr-panels .settings-form-wide{grid-column:auto!important}}

/* ======================================================================
   V14.27 — NEXUS CORE SETTINGS
   Nouveau système visuel compact : dock latéral + scène centrale + contexte.
   Aucun long scroll de page : seul le panneau actif peut défiler.
   ====================================================================== */
#view-parametres{height:calc(100vh - 78px)!important;min-height:620px!important;overflow:hidden!important;padding:14px 16px 18px!important}
#view-parametres>.settings-suite{height:100%!important;min-height:0!important;overflow:hidden!important;margin:0!important;padding:0!important}
.settings-controlroom{
  height:100%!important;min-height:0!important;max-height:none!important;
  display:grid!important;grid-template-rows:86px minmax(0,1fr)!important;
  overflow:hidden!important;position:relative!important;border-radius:24px!important;
  border:1px solid color-mix(in srgb,var(--card-border) 88%,transparent)!important;
  background:
    radial-gradient(circle at 84% -8%,color-mix(in srgb,var(--theme-accent) 10%,transparent),transparent 32%),
    radial-gradient(circle at 7% 108%,rgba(211,191,226,.18),transparent 27%),
    color-mix(in srgb,var(--card-surface) 95%,var(--bg-app))!important;
  box-shadow:0 24px 76px rgba(32,31,46,.10),inset 0 1px rgba(255,255,255,.7)!important;
}
.settings-controlroom:before{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(110deg,transparent 0 57%,rgba(255,255,255,.16) 57% 57.2%,transparent 57.2% 100%);opacity:.45}
.settings-controlroom:after{content:'';position:absolute;left:28px;right:28px;top:85px;height:1px;background:linear-gradient(90deg,transparent,color-mix(in srgb,var(--theme-accent) 40%,var(--card-border)),transparent);pointer-events:none}
.cr-header{position:relative!important;z-index:3!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important;padding:17px 20px 15px 22px!important;background:linear-gradient(180deg,rgba(255,255,255,.40),rgba(255,255,255,.08))!important;border:0!important;backdrop-filter:blur(18px)!important}
.cr-brandline{display:flex!important;align-items:center!important;gap:13px!important;min-width:0!important;position:relative!important}
.cr-accent-line{width:4px!important;height:42px!important;border-radius:99px!important;background:linear-gradient(180deg,var(--theme-accent),#efe020)!important;box-shadow:0 0 18px color-mix(in srgb,var(--theme-accent) 35%,transparent)!important;flex:0 0 auto!important}
.cr-kicker{font:800 7.5px 'Plus Jakarta Sans',sans-serif!important;letter-spacing:.16em!important;color:var(--text-muted)!important}
.cr-brandline h2{font-family:'DM Serif Display','Playfair Display',serif!important;font-size:1.55rem!important;line-height:1!important;letter-spacing:-.02em!important;margin:2px 0 4px!important}
.cr-brandline p{font-size:.63rem!important;line-height:1.35!important;margin:0!important;color:var(--text-muted)!important;white-space:nowrap!important;max-width:540px!important;overflow:hidden!important;text-overflow:ellipsis!important}
.nexus-core-ready{display:inline-flex!important;align-items:center!important;gap:5px!important;margin-left:7px!important;padding:6px 9px!important;border-radius:999px!important;border:1px solid rgba(35,173,118,.20)!important;background:rgba(222,250,239,.62)!important;color:#13805a!important;font:750 8px 'Plus Jakarta Sans',sans-serif!important;white-space:nowrap!important}
.cr-header-tools{display:flex!important;align-items:center!important;gap:9px!important;min-width:0!important}
.cr-search{position:relative!important;width:min(430px,38vw)!important;height:42px!important;display:flex!important;align-items:center!important;gap:8px!important;padding:0 13px!important;border-radius:14px!important;background:color-mix(in srgb,var(--card-surface) 88%,transparent)!important;border:1px solid color-mix(in srgb,var(--card-border) 94%,transparent)!important;box-shadow:0 9px 24px rgba(38,35,48,.045),inset 0 1px rgba(255,255,255,.75)!important}
.cr-search:focus-within{border-color:color-mix(in srgb,var(--theme-accent) 54%,var(--card-border))!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-accent) 9%,transparent),0 12px 30px rgba(38,35,48,.06)!important}
.cr-search input{width:100%!important;border:0!important;outline:0!important;background:transparent!important;color:var(--text-primary)!important;font-size:.67rem!important}
.settings-search-results{top:49px!important;right:0!important;left:0!important;border-radius:15px!important;border:1px solid var(--card-border)!important;background:color-mix(in srgb,var(--card-surface) 98%,transparent)!important;box-shadow:0 22px 54px rgba(27,30,44,.16)!important;backdrop-filter:blur(22px)!important;overflow:hidden!important}

/* scène 3 colonnes : dock / panneau / contexte */
.cr-stage{position:relative!important;z-index:2!important;display:grid!important;grid-template-columns:174px minmax(0,1fr) 218px!important;grid-template-rows:31px minmax(0,1fr)!important;min-height:0!important;height:100%!important;overflow:hidden!important;background:transparent!important}
.cr-category-ribbon{grid-column:1!important;grid-row:1/-1!important;display:flex!important;flex-direction:column!important;gap:5px!important;overflow:hidden!important;padding:13px 11px!important;border-right:1px solid color-mix(in srgb,var(--card-border) 82%,transparent)!important;border-bottom:0!important;background:linear-gradient(180deg,color-mix(in srgb,var(--card-surface) 72%,transparent),color-mix(in srgb,var(--bg-app) 54%,transparent))!important}
.cr-category-ribbon .settings-nav-btn{
  width:100%!important;height:40px!important;min-height:40px!important;min-width:0!important;
  display:grid!important;grid-template-columns:28px minmax(0,1fr)!important;align-items:center!important;gap:8px!important;
  padding:0 9px!important;margin:0!important;border:1px solid transparent!important;border-radius:12px!important;
  background:transparent!important;color:var(--text-muted)!important;box-shadow:none!important;
  font:720 9px 'Plus Jakarta Sans',sans-serif!important;letter-spacing:0!important;text-align:left!important;white-space:nowrap!important;
  transition:transform .16s ease,background .16s ease,border-color .16s ease,color .16s ease!important;
}
.cr-category-ribbon .settings-nav-btn>i{width:28px!important;height:28px!important;padding:6px!important;border-radius:9px!important;background:color-mix(in srgb,var(--card-surface) 90%,transparent)!important;border:1px solid color-mix(in srgb,var(--card-border) 84%,transparent)!important;stroke-width:1.8!important}
.cr-category-ribbon .settings-nav-btn:after{display:none!important}
.cr-category-ribbon .settings-nav-btn:hover{transform:translateX(2px)!important;color:var(--text-primary)!important;background:rgba(255,255,255,.28)!important}
.cr-category-ribbon .settings-nav-btn.active{color:var(--text-primary)!important;background:linear-gradient(90deg,color-mix(in srgb,var(--theme-accent) 13%,var(--card-surface)),color-mix(in srgb,var(--card-surface) 92%,transparent))!important;border-color:color-mix(in srgb,var(--theme-accent) 22%,var(--card-border))!important;box-shadow:0 8px 20px rgba(39,37,48,.045)!important}
.cr-category-ribbon .settings-nav-btn.active>i{background:color-mix(in srgb,var(--theme-accent) 16%,var(--card-surface))!important;border-color:color-mix(in srgb,var(--theme-accent) 30%,var(--card-border))!important;color:var(--text-primary)!important;box-shadow:inset 0 1px rgba(255,255,255,.74)!important}
.cr-category-ribbon .settings-nav-btn.danger{margin-top:auto!important;color:#b54c5d!important}
.cr-category-ribbon .settings-nav-btn.danger>i{background:rgba(255,238,240,.70)!important;border-color:rgba(181,76,93,.14)!important}
.cr-panel-label{grid-column:2!important;grid-row:1!important;display:flex!important;align-items:flex-end!important;padding:0 18px 6px!important;font:800 7px 'Plus Jakarta Sans',sans-serif!important;letter-spacing:.16em!important;color:color-mix(in srgb,var(--text-muted) 72%,transparent)!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 60%,transparent)!important}
.cr-panels{grid-column:2!important;grid-row:2!important;min-width:0!important;min-height:0!important;height:100%!important;overflow:hidden!important;background:transparent!important;border:0!important}
.cr-panels>.settings-panel{display:none!important;height:100%!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding:15px 17px 22px!important;margin:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;scrollbar-width:thin!important;scrollbar-color:color-mix(in srgb,var(--theme-accent) 20%,transparent) transparent!important;overscroll-behavior:contain!important}
.cr-panels>.settings-panel.active{display:block!important;animation:nexusCorePane .22s cubic-bezier(.2,.75,.2,1) both!important}
@keyframes nexusCorePane{from{opacity:0;transform:translateY(5px) scale(.997)}to{opacity:1;transform:none}}
.cr-panels .settings-section-head{position:sticky!important;top:-15px!important;z-index:5!important;margin:0 0 12px!important;padding:13px 0 11px!important;background:linear-gradient(180deg,color-mix(in srgb,var(--card-surface) 98%,var(--bg-app)) 0%,color-mix(in srgb,var(--card-surface) 94%,var(--bg-app)) 80%,transparent 100%)!important;backdrop-filter:blur(18px)!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 65%,transparent)!important}
.cr-panels .settings-section-head .section-heading-tag{display:none!important}
.cr-panels .settings-section-head h3{font-family:'DM Serif Display','Playfair Display',serif!important;font-size:1.08rem!important;line-height:1.05!important;letter-spacing:-.015em!important;margin:0 0 4px!important}
.cr-panels .settings-section-head p{font-size:.62rem!important;line-height:1.42!important;margin:0!important;color:var(--text-muted)!important;max-width:680px!important}
.cr-panels .settings-section-head>.btn-glow-primary,.cr-panels .settings-section-head>.settings-status-pill{min-height:33px!important;border-radius:11px!important;font-size:8.5px!important}

/* contexte droit */
.cr-context{grid-column:3!important;grid-row:1/-1!important;min-width:0!important;display:flex!important;flex-direction:column!important;gap:10px!important;padding:15px 13px!important;border-left:1px solid color-mix(in srgb,var(--card-border) 82%,transparent)!important;border-right:0!important;border-bottom:0!important;background:linear-gradient(180deg,color-mix(in srgb,var(--bg-app) 62%,transparent),color-mix(in srgb,var(--card-surface) 74%,transparent))!important;overflow:hidden!important}
.cr-context-top{display:block!important;padding:11px!important;border-radius:14px!important;background:color-mix(in srgb,var(--card-surface) 82%,transparent)!important;border:1px solid color-mix(in srgb,var(--card-border) 80%,transparent)!important}
.cr-context-index{display:inline-flex!important;align-items:center!important;height:22px!important;padding:0 8px!important;border-radius:999px!important;background:color-mix(in srgb,var(--theme-accent) 13%,var(--card-surface))!important;color:var(--text-primary)!important;font:800 7px 'Plus Jakarta Sans',sans-serif!important;letter-spacing:.13em!important;margin-bottom:9px!important}
.cr-context-top strong{display:block!important;font-family:'DM Serif Display','Playfair Display',serif!important;font-size:1rem!important;margin-bottom:4px!important}.cr-context-top p{font-size:.59rem!important;line-height:1.42!important;color:var(--text-muted)!important;margin:0!important}
.cr-subnav{display:flex!important;flex-direction:column!important;gap:5px!important;min-height:0!important;overflow-y:auto!important;padding:2px!important}.cr-subnav.single{display:block!important}
.cr-subnav button,.cr-subnav-single{width:100%!important;min-height:35px!important;display:flex!important;align-items:center!important;padding:0 10px!important;border-radius:10px!important;border:1px solid transparent!important;background:transparent!important;color:var(--text-muted)!important;font:700 8.5px 'Plus Jakarta Sans',sans-serif!important;text-align:left!important;transition:.16s ease!important}
.cr-subnav button:before{content:'';width:5px;height:5px;border-radius:50%;background:color-mix(in srgb,var(--text-muted) 45%,transparent);margin-right:8px;flex:0 0 auto}
.cr-subnav button:hover{background:rgba(255,255,255,.30)!important;color:var(--text-primary)!important}.cr-subnav button.active{background:color-mix(in srgb,var(--theme-accent) 10%,var(--card-surface))!important;border-color:color-mix(in srgb,var(--theme-accent) 20%,var(--card-border))!important;color:var(--text-primary)!important}.cr-subnav button.active:before{background:var(--theme-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--theme-accent) 12%,transparent)}
.cr-safety-card{margin-top:auto!important;display:flex!important;gap:8px!important;padding:10px!important;border-radius:13px!important;border:1px solid rgba(50,159,115,.14)!important;background:rgba(233,250,242,.54)!important;color:#226c53!important}.cr-safety-card>i{flex:0 0 auto;margin-top:1px}.cr-safety-card strong{display:block;font-size:8px!important}.cr-safety-card p{font-size:7.3px!important;line-height:1.4!important;margin:3px 0 0!important;color:color-mix(in srgb,#226c53 78%,var(--text-muted))!important}
.cr-context-foot{display:flex!important;align-items:center!important;gap:7px!important;padding:0 4px!important;color:var(--text-muted)!important;font-size:7.2px!important}.cr-status-dot{width:6px!important;height:6px!important;border-radius:50%!important;background:#18b579!important;box-shadow:0 0 0 4px rgba(24,181,121,.10)!important}

/* cartes : plus nettes, moins "gros formulaire" */
.cr-panels .spotlight-card,.cr-panels .settings-theme-card{border:1px solid color-mix(in srgb,var(--card-border) 88%,transparent)!important;background:linear-gradient(180deg,color-mix(in srgb,var(--card-surface) 98%,transparent),color-mix(in srgb,var(--card-surface) 91%,var(--bg-app)))!important;border-radius:14px!important;box-shadow:0 8px 24px rgba(34,34,46,.035),inset 0 1px rgba(255,255,255,.66)!important}
.cr-panels .spotlight-card:hover{border-color:color-mix(in srgb,var(--theme-accent) 22%,var(--card-border))!important;box-shadow:0 11px 30px rgba(34,34,46,.05)!important}
.cr-panels .settings-studio-grid{grid-template-columns:210px minmax(0,1fr)!important;gap:10px!important}.cr-panels .settings-profile-card{min-height:270px!important;padding:18px!important}.cr-panels .settings-form-card,.cr-panels .settings-control-card{padding:14px!important}.cr-panels .settings-form-grid{gap:8px!important}.cr-panels .modern-input{min-height:35px!important;border-radius:9px!important;font-size:.66rem!important;background:color-mix(in srgb,var(--card-surface) 86%,var(--bg-app))!important}
.cr-panels .settings-quick-console{margin:0!important;padding:12px!important;border-radius:14px!important}.cr-panels .settings-quick-select-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}.cr-panels .settings-select-shell{height:36px!important;border-radius:10px!important}.cr-panels .settings-theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:9px!important}.cr-panels .settings-theme-card{padding:8px!important}.cr-panels .settings-theme-preview{height:78px!important;border-radius:10px!important}.cr-panels .settings-two-col,.cr-panels .settings-three-col{gap:9px!important}.cr-panels .settings-three-col{grid-template-columns:repeat(3,minmax(0,1fr))!important}.cr-panels .settings-toggle-list{padding:11px!important}.cr-panels .settings-automation-list{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.cr-panels .settings-automation-row{min-height:58px!important;padding:10px!important;border-radius:12px!important}.cr-panels .nexus-integrations-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}.cr-panels .nexus-integration-card{padding:12px!important;border-radius:13px!important}.cr-panels .settings-data-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:9px!important}.cr-panels .settings-data-card{min-height:112px!important;padding:13px!important;display:grid!important;grid-template-columns:38px minmax(0,1fr) auto!important;align-items:center!important;gap:10px!important}.cr-panels .settings-data-card h4{font-size:.78rem!important;margin:0 0 3px!important}.cr-panels .settings-data-card p{font-size:.58rem!important;line-height:1.42!important;margin:0!important}.cr-panels .settings-data-card button{white-space:nowrap!important;min-height:33px!important;border-radius:10px!important;font-size:8px!important}.cr-panels .settings-data-icon{width:36px!important;height:36px!important;border-radius:11px!important}
.settings-backup-safety{display:flex;align-items:flex-start;gap:10px;margin-top:10px;padding:12px 13px;border-radius:13px;border:1px solid rgba(52,152,110,.17);background:linear-gradient(90deg,rgba(230,249,239,.62),rgba(255,255,255,.30));color:#276e55}.settings-backup-safety>i{flex:0 0 auto;margin-top:1px}.settings-backup-safety strong{display:block;font-size:.69rem}.settings-backup-safety p{margin:3px 0 0;font-size:.57rem;line-height:1.45;color:color-mix(in srgb,#276e55 72%,var(--text-muted))}
.cr-section-hidden{display:none!important}

/* mobile / tablette : navigation par dropdown, aucun ruban compressé */
.cr-mobile-category{display:none!important;position:relative!important}
@media(max-width:1120px){.cr-stage{grid-template-columns:154px minmax(0,1fr) 190px!important}.cr-category-ribbon .settings-nav-btn{height:38px!important;min-height:38px!important}.cr-panels .settings-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.cr-panels .settings-quick-select-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:900px){
 #view-parametres{height:calc(100vh - 68px)!important;min-height:600px!important;padding:10px!important;overflow:hidden!important}.settings-controlroom{grid-template-rows:98px minmax(0,1fr)!important;border-radius:18px!important}.cr-header{padding:13px!important;align-items:flex-start!important}.cr-brandline p{display:none!important}.nexus-core-ready{display:none!important}.cr-header-tools{flex:1!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;gap:7px!important}.cr-search{width:100%!important}.cr-mobile-category{display:block!important}.cr-mobile-category .settings-category-trigger{height:42px!important;min-width:145px!important;border-radius:12px!important}.settings-category-menu{top:47px!important;right:0!important;left:auto!important;width:220px!important;max-height:360px!important;overflow:auto!important}
 .cr-stage{grid-template-columns:1fr!important;grid-template-rows:42px minmax(0,1fr)!important}.cr-category-ribbon{display:none!important}.cr-panel-label{display:none!important}.cr-panels{grid-column:1!important;grid-row:2!important}.cr-context{grid-column:1!important;grid-row:1!important;display:flex!important;flex-direction:row!important;align-items:center!important;padding:6px 10px!important;border:0!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 78%,transparent)!important;overflow:hidden!important}.cr-context-top,.cr-safety-card,.cr-context-foot{display:none!important}.cr-subnav{display:flex!important;flex-direction:row!important;gap:6px!important;overflow-x:auto!important;overflow-y:hidden!important;padding:0!important}.cr-subnav button,.cr-subnav-single{width:auto!important;min-width:max-content!important;min-height:30px!important;border-radius:999px!important;padding:0 10px!important}.cr-subnav button:before{display:none!important}.cr-panels>.settings-panel{padding:11px 12px 16px!important}.cr-panels .settings-studio-grid{grid-template-columns:1fr!important}.cr-panels .settings-profile-card{display:none!important}
}
@media(max-width:600px){
 #view-parametres{padding:6px!important}.settings-controlroom{border-radius:15px!important;grid-template-rows:118px minmax(0,1fr)!important}.cr-header{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}.cr-brandline h2{font-size:1.22rem!important}.cr-header-tools{width:100%!important}.cr-search{height:39px!important}.cr-mobile-category .settings-category-trigger{height:39px!important;min-width:122px!important}.cr-panels .settings-theme-grid,.cr-panels .settings-three-col,.cr-panels .settings-two-col,.cr-panels .settings-data-grid,.cr-panels .nexus-integrations-grid,.cr-panels .settings-automation-list{grid-template-columns:1fr!important}.cr-panels .settings-quick-select-grid{grid-template-columns:1fr 1fr!important}.cr-panels .settings-data-card{grid-template-columns:34px minmax(0,1fr)!important}.cr-panels .settings-data-card button{grid-column:1/-1!important;width:100%!important}.cr-panels .settings-section-head p{display:none!important}.cr-panels .settings-form-grid{grid-template-columns:1fr!important}.cr-panels .settings-form-wide{grid-column:auto!important}
}

/* ========================================================================== 
   D&A NEXUS V14.28 — SETTINGS FLUENT
   Inspired by modern desktop settings UX: compact, calm, hierarchical.
   No imitation of proprietary Windows artwork; only interaction/layout principles.
   ========================================================================== */

#view-parametres{
  height:calc(100vh - 78px)!important;
  min-height:620px!important;
  overflow:hidden!important;
  padding:14px 16px 16px!important;
}
.fluent-settings-suite{height:100%!important;min-height:0!important}
.fluent-settings-window{
  height:100%!important;min-height:0!important;
  display:grid!important;grid-template-rows:76px minmax(0,1fr)!important;
  overflow:hidden!important;
  border:1px solid color-mix(in srgb,var(--card-border) 92%,transparent)!important;
  border-radius:17px!important;
  background:color-mix(in srgb,var(--bg-app) 88%,#f5f6f8 12%)!important;
  box-shadow:0 18px 46px rgba(31,36,48,.055)!important;
  backdrop-filter:blur(18px)!important;
}
.fluent-settings-header{
  min-height:0!important;display:grid!important;grid-template-columns:minmax(260px,1fr) minmax(320px,520px) auto!important;
  align-items:center!important;gap:18px!important;padding:12px 18px!important;
  border-bottom:1px solid color-mix(in srgb,var(--card-border) 88%,transparent)!important;
  background:color-mix(in srgb,var(--card-surface) 58%,transparent)!important;
}
.fluent-title-block{display:flex!important;align-items:center!important;gap:11px!important;min-width:0!important}
.fluent-title-block h2{font:800 1.23rem/1.15 var(--font-ui)!important;letter-spacing:-.02em!important;color:var(--text-primary)!important;margin:0!important}
.fluent-title-block p{font:500 .64rem/1.4 var(--font-ui)!important;color:var(--text-muted)!important;margin:4px 0 0!important}
.fluent-back-btn{
  width:34px!important;height:34px!important;display:grid!important;place-items:center!important;flex:0 0 auto!important;
  border:0!important;border-radius:8px!important;background:transparent!important;color:var(--text-primary)!important;cursor:pointer!important;
}
.fluent-back-btn:hover{background:color-mix(in srgb,var(--text-primary) 6%,transparent)!important}
.fluent-settings-search{
  width:100%!important;height:38px!important;min-height:38px!important;position:relative!important;
  display:flex!important;align-items:center!important;gap:9px!important;padding:0 12px!important;
  border:1px solid color-mix(in srgb,var(--text-muted) 20%,var(--card-border))!important;
  border-radius:8px!important;background:color-mix(in srgb,var(--card-surface) 94%,var(--bg-app))!important;
  box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--theme-accent) 46%,transparent)!important;
}
.fluent-settings-search:focus-within{border-color:color-mix(in srgb,var(--theme-accent) 58%,var(--card-border))!important;box-shadow:inset 0 -2px 0 var(--theme-accent)!important}
.fluent-settings-search input{width:100%!important;border:0!important;outline:0!important;background:transparent!important;color:var(--text-primary)!important;font:600 .69rem var(--font-ui)!important}
.fluent-settings-search input::placeholder{color:color-mix(in srgb,var(--text-muted) 86%,transparent)!important}
.fluent-settings-stage{
  min-height:0!important;display:grid!important;grid-template-columns:220px minmax(0,1fr)!important;
  overflow:hidden!important;background:transparent!important;
}
.fluent-settings-sidebar{
  grid-column:1!important;grid-row:1!important;min-width:0!important;min-height:0!important;
  display:flex!important;flex-direction:column!important;gap:2px!important;overflow-y:auto!important;
  padding:12px 9px 14px!important;border:0!important;border-right:1px solid color-mix(in srgb,var(--card-border) 90%,transparent)!important;
  background:color-mix(in srgb,var(--card-surface) 34%,transparent)!important;
}
.fluent-sidebar-profile{
  display:grid!important;grid-template-columns:34px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;
  min-height:52px!important;padding:7px 8px 11px!important;margin-bottom:5px!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 72%,transparent)!important;
}
.fluent-sidebar-avatar{width:34px!important;height:34px!important;border-radius:50%!important;display:grid!important;place-items:center!important;background:color-mix(in srgb,var(--theme-accent) 15%,var(--card-surface))!important;color:var(--theme-accent)!important}
.fluent-sidebar-profile strong{display:block!important;font:800 .68rem var(--font-ui)!important;color:var(--text-primary)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.fluent-sidebar-profile small{display:block!important;margin-top:2px!important;font:500 .54rem var(--font-ui)!important;color:var(--text-muted)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
.fluent-settings-sidebar .settings-nav-btn{
  position:relative!important;width:100%!important;height:39px!important;min-height:39px!important;
  display:grid!important;grid-template-columns:30px minmax(0,1fr)!important;align-items:center!important;gap:4px!important;
  padding:0 10px 0 8px!important;margin:0!important;border:0!important;border-radius:7px!important;
  background:transparent!important;color:var(--text-primary)!important;box-shadow:none!important;cursor:pointer!important;
  font:650 .67rem var(--font-ui)!important;text-align:left!important;transition:background .12s ease,color .12s ease!important;
}
.fluent-settings-sidebar .settings-nav-btn:before{
  content:''!important;position:absolute!important;left:0!important;top:10px!important;bottom:10px!important;width:3px!important;border-radius:4px!important;
  background:transparent!important;transition:.14s ease!important;
}
.fluent-settings-sidebar .settings-nav-btn svg{width:16px!important;height:16px!important;justify-self:center!important;color:color-mix(in srgb,var(--text-primary) 84%,var(--text-muted))!important}
.fluent-settings-sidebar .settings-nav-btn:hover{background:color-mix(in srgb,var(--text-primary) 5%,transparent)!important}
.fluent-settings-sidebar .settings-nav-btn.active{background:color-mix(in srgb,var(--text-primary) 7%,var(--card-surface))!important;font-weight:800!important}
.fluent-settings-sidebar .settings-nav-btn.active:before{background:var(--theme-accent)!important}
.fluent-settings-sidebar .settings-nav-btn.active svg{color:var(--theme-accent)!important}
.fluent-settings-main{min-width:0!important;min-height:0!important;display:grid!important;grid-template-rows:auto minmax(0,1fr)!important;overflow:hidden!important}
.fluent-content-head{
  display:flex!important;align-items:flex-end!important;justify-content:space-between!important;gap:18px!important;
  min-height:83px!important;padding:14px 22px 10px!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 78%,transparent)!important;
  background:transparent!important;
}
.fluent-content-copy{display:flex!important;align-items:flex-start!important;gap:10px!important;min-width:0!important}
.fluent-content-copy .cr-context-index{
  display:inline-grid!important;place-items:center!important;width:27px!important;height:27px!important;flex:0 0 auto!important;margin-top:1px!important;
  border-radius:7px!important;background:color-mix(in srgb,var(--theme-accent) 13%,var(--card-surface))!important;color:var(--theme-accent)!important;
  font:850 .58rem var(--font-ui)!important;letter-spacing:.04em!important;
}
.fluent-content-copy strong{display:block!important;font:800 1.02rem/1.2 var(--font-ui)!important;color:var(--text-primary)!important}
.fluent-content-copy p{margin:4px 0 0!important;max-width:560px!important;font:500 .61rem/1.45 var(--font-ui)!important;color:var(--text-muted)!important}
.fluent-subnav{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:5px!important;min-width:0!important;overflow-x:auto!important;padding:0 0 2px!important}
.fluent-subnav.single{display:none!important}
.fluent-subnav button{
  width:auto!important;min-width:max-content!important;height:30px!important;min-height:30px!important;padding:0 10px!important;
  border:1px solid transparent!important;border-radius:7px!important;background:transparent!important;color:var(--text-muted)!important;
  font:700 .59rem var(--font-ui)!important;cursor:pointer!important;
}
.fluent-subnav button:before{display:none!important}
.fluent-subnav button:hover{background:color-mix(in srgb,var(--text-primary) 5%,transparent)!important;color:var(--text-primary)!important}
.fluent-subnav button.active{background:color-mix(in srgb,var(--theme-accent) 10%,var(--card-surface))!important;border-color:color-mix(in srgb,var(--theme-accent) 18%,var(--card-border))!important;color:var(--text-primary)!important}
.fluent-settings-panels{min-height:0!important;overflow:hidden!important;padding:0!important;background:transparent!important}
.fluent-settings-panels>.settings-panel{
  display:none!important;height:100%!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;
  padding:18px 22px 26px!important;scrollbar-gutter:stable!important;background:transparent!important;
}
.fluent-settings-panels>.settings-panel.active{display:block!important}
.fluent-settings-panels>.settings-panel::-webkit-scrollbar{width:7px!important}.fluent-settings-panels>.settings-panel::-webkit-scrollbar-thumb{background:color-mix(in srgb,var(--text-muted) 24%,transparent)!important;border-radius:8px!important}
.fluent-settings-panels .settings-section-head{
  min-height:auto!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;
  padding:0 0 12px!important;margin:0 0 10px!important;border-bottom:0!important;
}
.fluent-settings-panels .settings-section-head .section-heading-tag{display:none!important}
.fluent-settings-panels .settings-section-head h3{font:800 1rem/1.2 var(--font-ui)!important;color:var(--text-primary)!important;margin:0!important}
.fluent-settings-panels .settings-section-head p{margin:4px 0 0!important;font:500 .6rem/1.45 var(--font-ui)!important;color:var(--text-muted)!important;max-width:720px!important}
.fluent-settings-panels .settings-section-head button,.fluent-settings-panels .settings-section-head .settings-status-pill{min-height:32px!important;border-radius:7px!important;font-size:.58rem!important}

/* Fluent rows/cards: flatter, denser, more like an OS settings surface */
.fluent-settings-panels .spotlight-card,
.fluent-settings-panels .settings-theme-card{
  background:color-mix(in srgb,var(--card-surface) 92%,var(--bg-app))!important;
  border:1px solid color-mix(in srgb,var(--card-border) 92%,transparent)!important;
  border-radius:9px!important;box-shadow:none!important;backdrop-filter:none!important;
}
.fluent-settings-panels .spotlight-card:hover{border-color:color-mix(in srgb,var(--text-muted) 26%,var(--card-border))!important;box-shadow:none!important}
.fluent-settings-panels .settings-studio-grid{display:block!important}
.fluent-settings-panels .settings-profile-card{display:none!important}
.fluent-settings-panels .settings-form-card{padding:13px!important}
.fluent-settings-panels .settings-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
.fluent-settings-panels .settings-form-grid label span,
.fluent-settings-panels .settings-field>span{font:700 .58rem var(--font-ui)!important;color:var(--text-muted)!important;margin-bottom:5px!important}
.fluent-settings-panels .modern-input,
.fluent-settings-panels .settings-select-shell{
  min-height:36px!important;height:36px!important;border-radius:7px!important;background:color-mix(in srgb,var(--card-surface) 92%,var(--bg-app))!important;
  border:1px solid color-mix(in srgb,var(--text-muted) 18%,var(--card-border))!important;box-shadow:none!important;font-size:.64rem!important;
}
.fluent-settings-panels .modern-input:focus{border-color:color-mix(in srgb,var(--theme-accent) 58%,var(--card-border))!important;box-shadow:inset 0 -2px 0 var(--theme-accent)!important}
.fluent-settings-panels .settings-quick-console{padding:12px!important;margin:0 0 10px!important}
.fluent-settings-panels .settings-quick-console-head{margin-bottom:10px!important}
.fluent-settings-panels .settings-quick-console-head h4{font:800 .74rem var(--font-ui)!important}
.fluent-settings-panels .settings-quick-select-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
.fluent-settings-panels .settings-theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
.fluent-settings-panels .settings-theme-card{padding:8px!important;min-height:118px!important}
.fluent-settings-panels .settings-theme-preview{height:62px!important;border-radius:7px!important}
.fluent-settings-panels .settings-theme-card strong{font-size:.64rem!important}.fluent-settings-panels .settings-theme-card span{font-size:.52rem!important}
.fluent-settings-panels .settings-two-col{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}
.fluent-settings-panels .settings-three-col{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
.fluent-settings-panels .settings-control-card{padding:12px!important}
.fluent-settings-panels .settings-card-head h4{font:800 .69rem var(--font-ui)!important}.fluent-settings-panels .settings-card-head p{font-size:.55rem!important;line-height:1.4!important}
.fluent-settings-panels .settings-card-icon{width:32px!important;height:32px!important;border-radius:7px!important}
.fluent-settings-panels .settings-toggle-list{padding:0!important;overflow:hidden!important}
.fluent-settings-panels .settings-toggle-row{min-height:54px!important;padding:9px 11px!important;border-radius:0!important;border:0!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 78%,transparent)!important;background:transparent!important}
.fluent-settings-panels .settings-toggle-row:last-child{border-bottom:0!important}
.fluent-settings-panels .settings-toggle-row strong{font-size:.65rem!important}.fluent-settings-panels .settings-toggle-row p{font-size:.53rem!important;margin-top:2px!important}
.fluent-settings-panels .settings-toggle-icon{width:30px!important;height:30px!important;border-radius:7px!important}
.fluent-settings-panels .settings-switch span{width:34px!important;height:19px!important}.fluent-settings-panels .settings-switch span:before{width:13px!important;height:13px!important;top:3px!important;left:3px!important}.fluent-settings-panels .settings-switch input:checked+span:before{transform:translateX(15px)!important}

/* Lists that should feel like Windows Settings rows */
.fluent-settings-panels .settings-automation-list{display:block!important;border:1px solid color-mix(in srgb,var(--card-border) 92%,transparent)!important;border-radius:9px!important;overflow:hidden!important;background:color-mix(in srgb,var(--card-surface) 92%,var(--bg-app))!important}
.fluent-settings-panels .settings-automation-row{display:grid!important;grid-template-columns:34px minmax(0,1fr) auto auto!important;align-items:center!important;gap:10px!important;min-height:58px!important;padding:9px 11px!important;margin:0!important;border:0!important;border-radius:0!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 80%,transparent)!important;background:transparent!important;box-shadow:none!important}
.fluent-settings-panels .settings-automation-row:last-child{border-bottom:0!important}.fluent-settings-panels .settings-automation-row strong{font-size:.64rem!important}.fluent-settings-panels .settings-automation-row p{font-size:.52rem!important;line-height:1.35!important;margin-top:2px!important}.fluent-settings-panels .settings-auto-icon{width:30px!important;height:30px!important;border-radius:7px!important}.fluent-settings-panels .settings-module-chip{font-size:.47rem!important}
.fluent-settings-panels .settings-data-grid{display:block!important;border:1px solid color-mix(in srgb,var(--card-border) 92%,transparent)!important;border-radius:9px!important;overflow:hidden!important;background:color-mix(in srgb,var(--card-surface) 92%,var(--bg-app))!important}
.fluent-settings-panels .settings-data-card{display:grid!important;grid-template-columns:36px minmax(0,1fr) auto!important;align-items:center!important;gap:11px!important;min-height:68px!important;padding:10px 12px!important;margin:0!important;border:0!important;border-radius:0!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 80%,transparent)!important;background:transparent!important;box-shadow:none!important}
.fluent-settings-panels .settings-data-card:last-child{border-bottom:0!important}.fluent-settings-panels .settings-data-icon{width:32px!important;height:32px!important;border-radius:7px!important}.fluent-settings-panels .settings-data-card h4{font:800 .65rem var(--font-ui)!important;margin:0 0 2px!important}.fluent-settings-panels .settings-data-card p{font:500 .53rem/1.4 var(--font-ui)!important;margin:0!important;color:var(--text-muted)!important}.fluent-settings-panels .settings-data-card button{min-height:32px!important;border-radius:7px!important;font-size:.56rem!important;white-space:nowrap!important}
.fluent-settings-panels .settings-backup-safety{border-radius:8px!important;margin-top:8px!important;padding:9px 11px!important}.fluent-settings-panels .settings-system-info{margin-top:8px!important;padding:9px!important;border-radius:8px!important}
.fluent-settings-panels .settings-account-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;gap:8px!important}.fluent-settings-panels .settings-account-profile,.fluent-settings-panels .settings-cloud-card{padding:12px!important}.fluent-settings-panels .settings-cloud-actions{gap:6px!important}.fluent-settings-panels .settings-cloud-actions button{min-height:32px!important;border-radius:7px!important;font-size:.56rem!important}

/* Integrations become compact stacked provider rows */
.fluent-settings-panels .nexus-integrations-security-note{grid-template-columns:34px minmax(0,1fr) auto!important;padding:10px 12px!important;margin-bottom:8px!important;border-radius:8px!important}.fluent-settings-panels .nexus-integrations-security-icon{width:32px!important;height:32px!important;border-radius:7px!important}.fluent-settings-panels .nexus-integrations-security-note strong{font-size:.66rem!important}.fluent-settings-panels .nexus-integrations-security-note p{font-size:.52rem!important;margin-top:2px!important}
.fluent-settings-panels .nexus-integrations-grid{display:block!important;border:1px solid color-mix(in srgb,var(--card-border) 92%,transparent)!important;border-radius:9px!important;overflow:hidden!important;background:color-mix(in srgb,var(--card-surface) 92%,var(--bg-app))!important}
.fluent-settings-panels .nexus-integration-card{padding:10px 12px!important;margin:0!important;border:0!important;border-radius:0!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 80%,transparent)!important;background:transparent!important;box-shadow:none!important}
.fluent-settings-panels .nexus-integration-card:last-child{border-bottom:0!important}.fluent-settings-panels .nexus-integration-head{grid-template-columns:34px minmax(0,1fr) auto!important;gap:9px!important}.fluent-settings-panels .nexus-integration-logo{width:32px!important;height:32px!important;border-radius:7px!important}.fluent-settings-panels .nexus-integration-head h4{font:800 .66rem var(--font-ui)!important}.fluent-settings-panels .nexus-integration-head p{font-size:.51rem!important;margin-top:1px!important}.fluent-settings-panels .nexus-integration-status{min-height:24px!important;padding:4px 8px!important;border-radius:999px!important;font-size:.5rem!important}
.fluent-settings-panels .nexus-integration-account{margin:7px 0 0 43px!important;padding:7px 9px!important;border-radius:7px!important}.fluent-settings-panels .nexus-integration-reference{margin:7px 0 0 43px!important}.fluent-settings-panels .nexus-integration-reference>span{font-size:.49rem!important;margin-bottom:4px!important}.fluent-settings-panels .nexus-integration-reference .modern-input{height:31px!important;min-height:31px!important}.fluent-settings-panels .nexus-integration-actions{margin:7px 0 0 43px!important;gap:6px!important}.fluent-settings-panels .nexus-integration-actions button{min-height:30px!important;border-radius:7px!important;font-size:.54rem!important}.fluent-settings-panels .nexus-integration-warning{margin:7px 0 0 43px!important;font-size:.5rem!important}

/* Search results */
.fluent-settings-search .settings-search-results{top:43px!important;left:0!important;right:0!important;width:auto!important;max-height:330px!important;overflow:auto!important;padding:5px!important;border-radius:9px!important;background:color-mix(in srgb,var(--card-surface) 98%,var(--bg-app))!important;border:1px solid var(--card-border)!important;box-shadow:0 18px 50px rgba(20,26,38,.16)!important;z-index:80!important}
.fluent-settings-search .settings-search-results button{border-radius:7px!important;padding:9px 10px!important;background:transparent!important}.fluent-settings-search .settings-search-results button:hover{background:color-mix(in srgb,var(--text-primary) 5%,transparent)!important}

/* Mobile/tablet: category selector replaces sidebar, content stays compact */
.cr-mobile-category{display:none!important}
@media(max-width:980px){
  #view-parametres{height:calc(100vh - 68px)!important;min-height:580px!important;padding:10px!important}
  .fluent-settings-window{grid-template-rows:88px minmax(0,1fr)!important;border-radius:14px!important}
  .fluent-settings-header{grid-template-columns:minmax(0,1fr) minmax(240px,.9fr) auto!important;padding:10px 12px!important;gap:10px!important}
  .fluent-title-block p{display:none!important}.fluent-settings-stage{grid-template-columns:180px minmax(0,1fr)!important}.fluent-settings-sidebar .settings-nav-btn{font-size:.61rem!important}
  .fluent-content-head{padding:11px 15px 8px!important;min-height:72px!important}.fluent-settings-panels>.settings-panel{padding:14px 15px 22px!important}.fluent-settings-panels .settings-quick-select-grid,.fluent-settings-panels .settings-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  .fluent-settings-window{grid-template-rows:112px minmax(0,1fr)!important}.fluent-settings-header{grid-template-columns:1fr auto!important;grid-template-rows:auto auto!important}.fluent-title-block{grid-column:1/2!important}.fluent-settings-search{grid-column:1/-1!important;grid-row:2!important}.cr-mobile-category{display:block!important;grid-column:2!important;grid-row:1!important;position:relative!important}.fluent-mobile-category .settings-category-trigger{height:34px!important;min-width:150px!important;padding:0 10px!important;border-radius:7px!important;border:1px solid var(--card-border)!important;background:color-mix(in srgb,var(--card-surface) 92%,var(--bg-app))!important;font-size:.6rem!important}.settings-category-menu{top:40px!important;right:0!important;left:auto!important;width:230px!important;max-height:360px!important;overflow:auto!important;border-radius:9px!important}
  .fluent-settings-stage{grid-template-columns:1fr!important}.fluent-settings-sidebar{display:none!important}.fluent-settings-main{grid-column:1!important}.fluent-content-head{display:block!important}.fluent-content-copy{margin-bottom:7px!important}.fluent-subnav{justify-content:flex-start!important}.fluent-settings-panels .settings-form-grid,.fluent-settings-panels .settings-two-col,.fluent-settings-panels .settings-three-col,.fluent-settings-panels .settings-account-grid{grid-template-columns:1fr!important}
}
@media(max-width:500px){
  #view-parametres{padding:6px!important}.fluent-settings-window{border-radius:11px!important}.fluent-title-block h2{font-size:1.03rem!important}.fluent-back-btn{display:none!important}.fluent-mobile-category .settings-category-trigger{min-width:132px!important}.fluent-content-copy p{display:none!important}.fluent-content-head{min-height:58px!important;padding:9px 10px 7px!important}.fluent-settings-panels>.settings-panel{padding:10px 10px 18px!important}.fluent-settings-panels .settings-section-head p{display:none!important}.fluent-settings-panels .settings-theme-grid,.fluent-settings-panels .settings-quick-select-grid{grid-template-columns:1fr!important}.fluent-settings-panels .settings-data-card{grid-template-columns:32px minmax(0,1fr)!important}.fluent-settings-panels .settings-data-card button{grid-column:1/-1!important;width:100%!important}.fluent-settings-panels .settings-automation-row{grid-template-columns:32px minmax(0,1fr) auto!important}.fluent-settings-panels .settings-module-chip{display:none!important}.fluent-settings-panels .nexus-integration-reference,.fluent-settings-panels .nexus-integration-actions,.fluent-settings-panels .nexus-integration-warning,.fluent-settings-panels .nexus-integration-account{margin-left:0!important}
}


/* ========================================================================== 
   D&A NEXUS V14.29 — SETTINGS FLUENT STABILITY HOTFIX
   Corrige les collisions V14.27/V14.28 : sidebar tronquée à 54px et sous-onglets
   capables de masquer le contenu principal. Le scroll reste INTERNE au panneau.
   ========================================================================== */
#view-parametres .fluent-settings-stage{
  height:100%!important;
  min-height:0!important;
  grid-template-columns:232px minmax(0,1fr)!important;
  overflow:hidden!important;
}
#view-parametres .fluent-settings-sidebar,
#view-parametres .cr-category-ribbon.fluent-settings-sidebar{
  position:relative!important;
  top:auto!important;
  width:auto!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  gap:2px!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  padding:12px 9px 14px!important;
  scrollbar-width:thin!important;
}
#view-parametres .fluent-settings-sidebar .fluent-sidebar-profile{
  flex:0 0 58px!important;
  width:100%!important;
  visibility:visible!important;
  opacity:1!important;
}
#view-parametres .fluent-settings-sidebar .settings-nav-btn{
  flex:0 0 40px!important;
  width:100%!important;
  height:40px!important;
  min-height:40px!important;
  max-height:40px!important;
  display:grid!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;
  overflow:visible!important;
}
#view-parametres .fluent-settings-sidebar .settings-nav-btn>span,
#view-parametres .fluent-settings-sidebar .settings-nav-btn .cr-nav-label{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  font-size:.67rem!important;
  letter-spacing:0!important;
  color:inherit!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#view-parametres .fluent-settings-main{
  height:100%!important;
  min-height:0!important;
  overflow:hidden!important;
  grid-template-rows:72px minmax(0,1fr)!important;
}
#view-parametres .fluent-content-head{
  min-height:72px!important;
  padding:12px 20px 10px!important;
  align-items:center!important;
}
#view-parametres .fluent-content-copy{
  display:flex!important;
  visibility:visible!important;
  opacity:1!important;
}
#view-parametres .fluent-content-copy strong,
#view-parametres .fluent-content-copy p,
#view-parametres .fluent-content-copy .cr-context-index{
  visibility:visible!important;
  opacity:1!important;
}
#view-parametres .fluent-subnav{
  display:none!important;
}
#view-parametres .fluent-settings-panels{
  height:100%!important;
  min-height:0!important;
  overflow:hidden!important;
}
#view-parametres .fluent-settings-panels>.settings-panel{
  height:100%!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:16px 20px 26px!important;
  visibility:hidden!important;
  opacity:0!important;
}
#view-parametres .fluent-settings-panels>.settings-panel.active{
  display:block!important;
  visibility:visible!important;
  opacity:1!important;
  transform:none!important;
}
#view-parametres .fluent-settings-panels>.settings-panel.active>.cr-section-hidden{
  display:block!important;
}
#view-parametres .fluent-settings-panels>.settings-panel.active>.settings-three-col.cr-section-hidden{
  display:grid!important;
}
#view-parametres .fluent-settings-panels>.settings-panel.active>.settings-two-col.cr-section-hidden,
#view-parametres .fluent-settings-panels>.settings-panel.active>.settings-data-grid.cr-section-hidden,
#view-parametres .fluent-settings-panels>.settings-panel.active>.settings-account-grid.cr-section-hidden,
#view-parametres .fluent-settings-panels>.settings-panel.active>.nexus-integrations-grid.cr-section-hidden{
  display:grid!important;
}
#view-parametres .fluent-settings-panels>.settings-panel.active>.settings-automation-list.cr-section-hidden{
  display:grid!important;
}
#view-parametres .fluent-settings-panels .settings-section-head{
  position:static!important;
  visibility:visible!important;
  opacity:1!important;
}
#view-parametres .fluent-settings-panels .settings-section-head h3{
  font-size:1.05rem!important;
}
#view-parametres .fluent-settings-panels .settings-section-head p{
  font-size:.62rem!important;
}
@media(max-width:760px){
  #view-parametres .fluent-settings-stage{grid-template-columns:1fr!important;}
  #view-parametres .fluent-settings-sidebar{display:none!important;}
  #view-parametres .fluent-settings-main{grid-column:1!important;}
}


/* ========================================================================== 
   D&A NEXUS V14.30 — SETTINGS CLEAN REBUILD
   Clean, isolated settings shell. Inspired by modern Windows settings UX
   principles (hierarchy, compact navigation, internal panes), not copied UI.
   ========================================================================== */
#view-parametres{
  height:min(760px,calc(100vh - 180px))!important;
  min-height:570px!important;
  max-height:760px!important;
  overflow:hidden!important;
  padding:12px 16px 16px!important;
  position:relative!important;
}
#view-parametres .winset-shell{
  width:100%!important;height:100%!important;min-height:0!important;max-height:none!important;
  display:grid!important;grid-template-rows:72px minmax(0,1fr)!important;
  overflow:hidden!important;margin:0!important;padding:0!important;
  border:1px solid color-mix(in srgb,var(--card-border) 92%,transparent)!important;
  border-radius:18px!important;background:color-mix(in srgb,var(--bg-app) 88%,#f5f6f8 12%)!important;
  box-shadow:0 14px 42px rgba(27,32,44,.055)!important;
}
#view-parametres .winset-header{
  min-height:0!important;display:grid!important;grid-template-columns:minmax(300px,1fr) minmax(330px,520px) auto!important;
  align-items:center!important;gap:18px!important;padding:12px 18px!important;
  border-bottom:1px solid color-mix(in srgb,var(--card-border) 88%,transparent)!important;
  background:color-mix(in srgb,var(--card-surface) 86%,var(--bg-app))!important;
}
#view-parametres .winset-title{display:flex!important;align-items:center!important;gap:11px!important;min-width:0!important}
#view-parametres .winset-title h2{margin:0!important;font:800 1.2rem/1.1 var(--font-ui)!important;color:var(--text-primary)!important;letter-spacing:-.02em!important}
#view-parametres .winset-title p{margin:4px 0 0!important;font:500 .63rem/1.35 var(--font-ui)!important;color:var(--text-muted)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#view-parametres .winset-back{width:36px!important;height:36px!important;display:grid!important;place-items:center!important;flex:0 0 auto!important;border:0!important;border-radius:8px!important;background:transparent!important;color:var(--text-primary)!important;cursor:pointer!important}
#view-parametres .winset-back:hover{background:color-mix(in srgb,var(--text-primary) 6%,transparent)!important}
#view-parametres .winset-search{height:40px!important;display:flex!important;align-items:center!important;gap:9px!important;position:relative!important;padding:0 12px!important;border:1px solid color-mix(in srgb,var(--text-muted) 22%,var(--card-border))!important;border-radius:8px!important;background:color-mix(in srgb,var(--card-surface) 96%,var(--bg-app))!important;box-shadow:inset 0 -2px 0 color-mix(in srgb,var(--theme-accent) 42%,transparent)!important}
#view-parametres .winset-search:focus-within{border-color:color-mix(in srgb,var(--theme-accent) 55%,var(--card-border))!important;box-shadow:inset 0 -2px 0 var(--theme-accent)!important}
#view-parametres .winset-search input{width:100%!important;border:0!important;outline:0!important;background:transparent!important;color:var(--text-primary)!important;font:600 .68rem var(--font-ui)!important}
#view-parametres .winset-search .settings-search-results{position:absolute!important;top:46px!important;left:0!important;right:0!important;width:auto!important;max-height:320px!important;overflow:auto!important;padding:5px!important;border:1px solid var(--card-border)!important;border-radius:10px!important;background:color-mix(in srgb,var(--card-surface) 99%,var(--bg-app))!important;box-shadow:0 18px 48px rgba(22,27,37,.16)!important;z-index:200!important}
#view-parametres .winset-search .settings-search-results button{width:100%!important;text-align:left!important;padding:9px 10px!important;border:0!important;border-radius:7px!important;background:transparent!important;color:var(--text-primary)!important;cursor:pointer!important}
#view-parametres .winset-search .settings-search-results button:hover{background:color-mix(in srgb,var(--text-primary) 5%,transparent)!important}
#view-parametres .winset-search .settings-search-results strong{display:block!important;font-size:.63rem!important}#view-parametres .winset-search .settings-search-results span{display:block!important;margin-top:2px!important;font-size:.53rem!important;color:var(--text-muted)!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important}
#view-parametres .winset-body{min-height:0!important;height:100%!important;display:grid!important;grid-template-columns:236px minmax(0,1fr)!important;overflow:hidden!important}
#view-parametres .winset-sidebar{min-width:0!important;min-height:0!important;height:100%!important;display:flex!important;flex-direction:column!important;overflow:hidden!important;padding:10px 8px 12px!important;border-right:1px solid color-mix(in srgb,var(--card-border) 90%,transparent)!important;background:color-mix(in srgb,var(--card-surface) 42%,transparent)!important}
#view-parametres .winset-profile{display:grid!important;grid-template-columns:36px minmax(0,1fr)!important;align-items:center!important;gap:10px!important;min-height:58px!important;padding:7px 9px 11px!important;margin-bottom:5px!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 76%,transparent)!important}
#view-parametres .winset-profile-icon{width:36px!important;height:36px!important;border-radius:9px!important;display:grid!important;place-items:center!important;background:color-mix(in srgb,var(--theme-accent) 14%,var(--card-surface))!important;color:var(--theme-accent)!important}
#view-parametres .winset-profile strong{display:block!important;font:800 .68rem var(--font-ui)!important;color:var(--text-primary)!important}#view-parametres .winset-profile small{display:block!important;margin-top:2px!important;font:500 .52rem var(--font-ui)!important;color:var(--text-muted)!important}
#view-parametres .winset-nav{min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;display:flex!important;flex-direction:column!important;gap:2px!important;padding:2px 0!important;scrollbar-width:thin!important}
#view-parametres .winset-nav .settings-nav-btn{
  position:relative!important;flex:0 0 40px!important;width:100%!important;height:40px!important;min-height:40px!important;max-height:40px!important;
  display:grid!important;grid-template-columns:30px minmax(0,1fr) 18px!important;align-items:center!important;gap:4px!important;
  padding:0 8px!important;margin:0!important;border:0!important;border-radius:7px!important;background:transparent!important;color:var(--text-primary)!important;box-shadow:none!important;cursor:pointer!important;font:650 .65rem var(--font-ui)!important;text-align:left!important;white-space:nowrap!important;visibility:visible!important;opacity:1!important;transform:none!important;overflow:visible!important;
}
#view-parametres .winset-nav .settings-nav-btn:before{content:''!important;position:absolute!important;left:0!important;top:10px!important;bottom:10px!important;width:3px!important;border-radius:5px!important;background:transparent!important}
#view-parametres .winset-nav .settings-nav-btn:hover{background:color-mix(in srgb,var(--text-primary) 5%,transparent)!important;color:var(--text-primary)!important}
#view-parametres .winset-nav .settings-nav-btn.active{background:color-mix(in srgb,var(--theme-accent) 9%,var(--card-surface))!important;color:var(--text-primary)!important;font-weight:800!important;box-shadow:none!important}
#view-parametres .winset-nav .settings-nav-btn.active:before{background:var(--theme-accent)!important}
#view-parametres .winset-nav .settings-nav-btn>svg:first-of-type{justify-self:center!important;color:color-mix(in srgb,var(--text-primary) 82%,var(--text-muted))!important}#view-parametres .winset-nav .settings-nav-btn.active>svg:first-of-type{color:var(--theme-accent)!important}
#view-parametres .winset-nav .settings-nav-btn>span{display:block!important;visibility:visible!important;opacity:1!important;overflow:hidden!important;text-overflow:ellipsis!important;white-space:nowrap!important;color:inherit!important}
#view-parametres .winset-nav-chevron{justify-self:end!important;color:color-mix(in srgb,var(--text-muted) 65%,transparent)!important}
#view-parametres .winset-main{min-width:0!important;min-height:0!important;height:100%!important;display:grid!important;grid-template-rows:76px minmax(0,1fr)!important;overflow:hidden!important;background:transparent!important}
#view-parametres .winset-page-head{min-height:0!important;display:flex!important;align-items:center!important;padding:12px 22px!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 80%,transparent)!important;background:transparent!important}
#view-parametres .winset-page-head>div:first-child{display:flex!important;align-items:flex-start!important;gap:10px!important}
#view-parametres #settings-context-index{width:28px!important;height:28px!important;display:grid!important;place-items:center!important;flex:0 0 auto!important;border-radius:7px!important;background:color-mix(in srgb,var(--theme-accent) 13%,var(--card-surface))!important;color:var(--theme-accent)!important;font:850 .57rem var(--font-ui)!important}
#view-parametres .winset-page-head h3{margin:0!important;font:800 1.06rem/1.2 var(--font-ui)!important;color:var(--text-primary)!important}#view-parametres .winset-page-head p{margin:4px 0 0!important;font:500 .6rem/1.4 var(--font-ui)!important;color:var(--text-muted)!important;max-width:680px!important}
#view-parametres .winset-panels{min-height:0!important;height:100%!important;overflow:hidden!important;padding:0!important;position:relative!important}
#view-parametres .winset-panels>.settings-panel{display:none!important;height:100%!important;min-height:0!important;overflow-y:auto!important;overflow-x:hidden!important;padding:17px 22px 26px!important;margin:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;visibility:visible!important;opacity:1!important;transform:none!important;scrollbar-width:thin!important;scrollbar-color:color-mix(in srgb,var(--text-muted) 24%,transparent) transparent!important}
#view-parametres .winset-panels>.settings-panel.active{display:block!important;visibility:visible!important;opacity:1!important;transform:none!important}
#view-parametres .winset-panels>.settings-panel>.cr-section-hidden{display:block!important}
#view-parametres .winset-panels>.settings-panel>.settings-two-col.cr-section-hidden,#view-parametres .winset-panels>.settings-panel>.settings-three-col.cr-section-hidden,#view-parametres .winset-panels>.settings-panel>.settings-data-grid.cr-section-hidden,#view-parametres .winset-panels>.settings-panel>.settings-account-grid.cr-section-hidden,#view-parametres .winset-panels>.settings-panel>.nexus-integrations-grid.cr-section-hidden{display:grid!important}
#view-parametres .winset-panels .settings-section-head{position:static!important;min-height:auto!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;padding:0 0 10px!important;margin:0 0 10px!important;border:0!important;background:transparent!important;backdrop-filter:none!important;visibility:visible!important;opacity:1!important}
#view-parametres .winset-panels .settings-section-head .section-heading-tag{display:none!important}#view-parametres .winset-panels .settings-section-head h3{margin:0!important;font:800 .96rem/1.2 var(--font-ui)!important;color:var(--text-primary)!important}#view-parametres .winset-panels .settings-section-head p{margin:4px 0 0!important;font:500 .57rem/1.4 var(--font-ui)!important;color:var(--text-muted)!important;max-width:720px!important}
/* Flatter Windows-like content rows/cards */
#view-parametres .winset-panels .spotlight-card,#view-parametres .winset-panels .settings-theme-card{border:1px solid color-mix(in srgb,var(--card-border) 94%,transparent)!important;border-radius:11px!important;background:color-mix(in srgb,var(--card-surface) 96%,var(--bg-app))!important;box-shadow:none!important}
#view-parametres .winset-panels .spotlight-card:hover{border-color:color-mix(in srgb,var(--text-muted) 27%,var(--card-border))!important;box-shadow:none!important;transform:none!important}
#view-parametres .winset-panels .settings-studio-grid{grid-template-columns:200px minmax(0,1fr)!important;gap:10px!important}#view-parametres .winset-panels .settings-profile-card{min-height:250px!important;padding:16px!important}#view-parametres .winset-panels .settings-form-card,#view-parametres .winset-panels .settings-control-card{padding:12px!important}
#view-parametres .winset-panels .settings-form-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}#view-parametres .winset-panels .modern-input,#view-parametres .winset-panels .settings-select-shell{min-height:36px!important;height:36px!important;border-radius:7px!important;font-size:.64rem!important;background:color-mix(in srgb,var(--card-surface) 95%,var(--bg-app))!important}
#view-parametres .winset-panels .settings-two-col{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px!important}#view-parametres .winset-panels .settings-three-col{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}
#view-parametres .winset-panels .settings-theme-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:8px!important}#view-parametres .winset-panels .settings-theme-card{padding:8px!important;min-height:112px!important}#view-parametres .winset-panels .settings-theme-preview{height:60px!important;border-radius:7px!important}
#view-parametres .winset-panels .settings-toggle-list{padding:0!important;overflow:hidden!important}#view-parametres .winset-panels .settings-toggle-row{min-height:54px!important;padding:9px 11px!important;border-radius:0!important;border:0!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 80%,transparent)!important;background:transparent!important}#view-parametres .winset-panels .settings-toggle-row:last-child{border-bottom:0!important}
#view-parametres .winset-panels .settings-automation-list,#view-parametres .winset-panels .settings-data-grid,#view-parametres .winset-panels .nexus-integrations-grid{display:block!important;border:1px solid color-mix(in srgb,var(--card-border) 94%,transparent)!important;border-radius:11px!important;overflow:hidden!important;background:color-mix(in srgb,var(--card-surface) 96%,var(--bg-app))!important}
#view-parametres .winset-panels .settings-automation-row{display:grid!important;grid-template-columns:34px minmax(0,1fr) auto auto!important;align-items:center!important;gap:10px!important;min-height:58px!important;padding:9px 11px!important;margin:0!important;border:0!important;border-radius:0!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 82%,transparent)!important;background:transparent!important;box-shadow:none!important}
#view-parametres .winset-panels .settings-data-card{display:grid!important;grid-template-columns:36px minmax(0,1fr) auto!important;align-items:center!important;gap:11px!important;min-height:70px!important;padding:10px 12px!important;margin:0!important;border:0!important;border-radius:0!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 82%,transparent)!important;background:transparent!important;box-shadow:none!important}
#view-parametres .winset-panels .settings-data-card:last-child,#view-parametres .winset-panels .settings-automation-row:last-child{border-bottom:0!important}
#view-parametres .winset-panels .nexus-integration-card{padding:11px 12px!important;margin:0!important;border:0!important;border-radius:0!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 82%,transparent)!important;background:transparent!important;box-shadow:none!important}#view-parametres .winset-panels .nexus-integration-card:last-child{border-bottom:0!important}
#view-parametres .winset-panels .nexus-integration-reference,#view-parametres .winset-panels .nexus-integration-actions,#view-parametres .winset-panels .nexus-integration-warning,#view-parametres .winset-panels .nexus-integration-account{margin-left:42px!important}
#view-parametres .winset-panels .settings-account-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;gap:8px!important}
/* New static Security/About rows */
#view-parametres .winset-row-list{border:1px solid color-mix(in srgb,var(--card-border) 94%,transparent)!important;border-radius:11px!important;overflow:hidden!important;background:color-mix(in srgb,var(--card-surface) 96%,var(--bg-app))!important}
#view-parametres .winset-setting-row{width:100%!important;min-height:62px!important;display:grid!important;grid-template-columns:38px minmax(0,1fr) auto 18px!important;align-items:center!important;gap:10px!important;padding:9px 12px!important;border:0!important;border-bottom:1px solid color-mix(in srgb,var(--card-border) 82%,transparent)!important;background:transparent!important;color:var(--text-primary)!important;text-align:left!important;cursor:pointer!important}#view-parametres .winset-setting-row:last-child{border-bottom:0!important}#view-parametres .winset-setting-row:hover{background:color-mix(in srgb,var(--text-primary) 4%,transparent)!important}
#view-parametres .winset-row-icon{width:34px!important;height:34px!important;display:grid!important;place-items:center!important;border-radius:8px!important;background:color-mix(in srgb,var(--theme-accent) 11%,var(--card-surface))!important;color:var(--theme-accent)!important}#view-parametres .winset-row-copy strong{display:block!important;font-size:.65rem!important}#view-parametres .winset-row-copy small{display:block!important;margin-top:3px!important;font-size:.53rem!important;line-height:1.35!important;color:var(--text-muted)!important}#view-parametres .winset-row-state{font-size:.5rem!important;padding:4px 7px!important;border-radius:999px!important;background:color-mix(in srgb,var(--text-muted) 8%,transparent)!important;color:var(--text-muted)!important}#view-parametres .winset-row-state.good{background:rgba(36,177,119,.10)!important;color:#16845a!important}
#view-parametres .winset-info-banner{display:flex!important;align-items:flex-start!important;gap:10px!important;margin-top:10px!important;padding:12px!important;border:1px solid color-mix(in srgb,var(--card-border) 92%,transparent)!important;border-radius:11px!important;background:color-mix(in srgb,var(--card-surface) 92%,var(--theme-accent-soft))!important}#view-parametres .winset-info-banner strong{display:block!important;font-size:.65rem!important}#view-parametres .winset-info-banner p{margin:3px 0 0!important;font-size:.54rem!important;line-height:1.4!important;color:var(--text-muted)!important}
#view-parametres .winset-about-card{padding:16px!important;border:1px solid color-mix(in srgb,var(--card-border) 94%,transparent)!important;border-radius:11px!important;background:color-mix(in srgb,var(--card-surface) 96%,var(--bg-app))!important}#view-parametres .winset-about-brand{display:flex!important;align-items:center!important;gap:12px!important;padding-bottom:14px!important;border-bottom:1px solid var(--card-border)!important}#view-parametres .winset-about-brand img{width:48px!important;height:48px!important;border-radius:12px!important}#view-parametres .winset-about-brand strong{display:block!important;font:800 .85rem var(--font-ui)!important}#view-parametres .winset-about-brand span{display:block!important;margin-top:3px!important;font-size:.55rem!important;color:var(--text-muted)!important}#view-parametres .winset-about-grid{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:1px!important;margin-top:12px!important;background:var(--card-border)!important;border:1px solid var(--card-border)!important;border-radius:8px!important;overflow:hidden!important}#view-parametres .winset-about-grid>div{padding:11px 12px!important;background:var(--card-surface)!important}#view-parametres .winset-about-grid span{display:block!important;font-size:.5rem!important;color:var(--text-muted)!important}#view-parametres .winset-about-grid strong{display:block!important;margin-top:3px!important;font-size:.64rem!important}
/* mobile category menu */
#view-parametres .winset-mobile-category{display:none!important;position:relative!important}#view-parametres .settings-category-menu{position:absolute!important;top:42px!important;right:0!important;width:245px!important;max-height:370px!important;overflow:auto!important;padding:5px!important;border:1px solid var(--card-border)!important;border-radius:10px!important;background:color-mix(in srgb,var(--card-surface) 99%,var(--bg-app))!important;box-shadow:0 18px 50px rgba(24,28,38,.16)!important;z-index:220!important}#view-parametres .settings-category-menu button{width:100%!important;min-height:38px!important;display:grid!important;grid-template-columns:28px minmax(0,1fr)!important;align-items:center!important;gap:6px!important;padding:0 8px!important;border:0!important;border-radius:7px!important;background:transparent!important;color:var(--text-primary)!important;font-size:.62rem!important;text-align:left!important;cursor:pointer!important}#view-parametres .settings-category-menu button:hover{background:color-mix(in srgb,var(--text-primary) 5%,transparent)!important}
@media(max-width:980px){
  #view-parametres{height:calc(100svh - 150px)!important;min-height:560px!important;padding:10px!important}
  #view-parametres .winset-header{grid-template-columns:minmax(250px,1fr) minmax(250px,.9fr) auto!important;gap:10px!important;padding:10px 12px!important}
  #view-parametres .winset-title p{display:none!important}#view-parametres .winset-body{grid-template-columns:195px minmax(0,1fr)!important}#view-parametres .winset-nav .settings-nav-btn{font-size:.6rem!important}
  #view-parametres .winset-panels .settings-theme-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}
@media(max-width:760px){
  #view-parametres{height:calc(100svh - 130px)!important;min-height:560px!important;padding:7px!important}
  #view-parametres .winset-shell{grid-template-rows:108px minmax(0,1fr)!important;border-radius:13px!important}
  #view-parametres .winset-header{grid-template-columns:1fr auto!important;grid-template-rows:auto auto!important;align-items:center!important}
  #view-parametres .winset-title{grid-column:1!important;grid-row:1!important}#view-parametres .winset-search{grid-column:1/-1!important;grid-row:2!important}#view-parametres .winset-mobile-category{display:block!important;grid-column:2!important;grid-row:1!important}
  #view-parametres .settings-category-trigger{height:34px!important;min-width:142px!important;padding:0 9px!important;border:1px solid var(--card-border)!important;border-radius:7px!important;background:var(--card-surface)!important;color:var(--text-primary)!important;font-size:.59rem!important}
  #view-parametres .winset-body{grid-template-columns:1fr!important}#view-parametres .winset-sidebar{display:none!important}#view-parametres .winset-main{grid-template-rows:62px minmax(0,1fr)!important}#view-parametres .winset-page-head{padding:9px 12px!important}#view-parametres .winset-page-head p{display:none!important}#view-parametres .winset-panels>.settings-panel{padding:11px 12px 18px!important}
  #view-parametres .winset-panels .settings-form-grid,#view-parametres .winset-panels .settings-two-col,#view-parametres .winset-panels .settings-three-col,#view-parametres .winset-panels .settings-account-grid{grid-template-columns:1fr!important}#view-parametres .winset-panels .settings-studio-grid{grid-template-columns:1fr!important}#view-parametres .winset-panels .settings-profile-card{display:none!important}
}
@media(max-width:500px){
  #view-parametres .winset-title h2{font-size:1rem!important}#view-parametres .winset-back{display:none!important}#view-parametres .settings-category-trigger{min-width:126px!important}#view-parametres .winset-panels .settings-theme-grid{grid-template-columns:1fr!important}#view-parametres .winset-panels .settings-data-card{grid-template-columns:32px minmax(0,1fr)!important}#view-parametres .winset-panels .settings-data-card button{grid-column:1/-1!important;width:100%!important}#view-parametres .winset-panels .settings-automation-row{grid-template-columns:32px minmax(0,1fr) auto!important}#view-parametres .winset-panels .settings-module-chip{display:none!important}#view-parametres .winset-panels .nexus-integration-reference,#view-parametres .winset-panels .nexus-integration-actions,#view-parametres .winset-panels .nexus-integration-warning,#view-parametres .winset-panels .nexus-integration-account{margin-left:0!important}
}


/* ========================================================================== */
/* V14.31 — Corrections ciblées UX / droits Client / interactions demandées  */
/* ========================================================================== */

/* Portail client : aucune donnée interne de fiche client et aucun contrôle designer. */
.client-portal-suite[data-portal-mode="client"] #portal-client-info-section{display:none!important}
.client-portal-suite[data-portal-mode="client"] .portal-project-meta-table select,
.client-portal-suite[data-portal-mode="client"] .portal-project-meta-table input{appearance:none!important;-webkit-appearance:none!important;opacity:1!important;color:var(--text-primary)!important;cursor:default!important;background-image:none!important}
.portal-task-readonly-status{display:inline-flex;align-items:center;gap:8px;min-height:31px;padding:6px 9px;border:1px solid var(--card-border);border-radius:9px;font-size:.72rem;font-weight:700;background:var(--card-surface);white-space:nowrap}
.portal-task-readonly-status.status-done{border-color:#62a167;background:rgba(98,161,103,.08)}
.portal-task-readonly-status.status-progress{border-color:#5a8eb4;background:rgba(90,142,180,.08)}
.portal-task-readonly-status.status-complete{border-color:#d99a20;background:rgba(217,154,32,.08)}
.portal-task-readonly-status.status-waiting{border-color:#e98231;background:rgba(233,130,49,.08)}
.portal-task-readonly-status.status-validate{border-color:#9865a7;background:rgba(152,101,167,.08)}
.portal-task-readonly-status.status-todo{border-color:#a0a0a0;background:rgba(160,160,160,.08)}
.portal-task-readonly-value{display:inline-flex;align-items:center;min-height:31px;padding:6px 2px;font-size:.74rem;color:var(--text-primary)}
.portal-doc-readonly-status{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;border:1px solid var(--portal-line);background:var(--portal-soft);font-size:.72rem;font-weight:800;color:var(--portal-accent)}

/* Bilan : section 07 plein format + édition mensuelle consolidée. */
.wellness-suite .well-me-time-full{grid-template-columns:1fr!important}
.well-review-head-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.well-review-image-wrap{position:relative;width:100%}
.wellness-suite .well-review-image-wrap img{width:100%;height:86px;object-fit:cover;border-radius:10px}
.well-review-photo-btn{right:7px!important;top:7px!important;bottom:auto!important}
.well-review-editor-modal{width:min(760px,calc(100vw - 32px))}
.well-review-editor-photo{display:flex;flex-direction:column;gap:7px;align-self:end}
.well-review-editor-photo label{font-size:.75rem;font-weight:800;color:var(--text-muted)}

/* Calendrier global : lignes réellement interactives. */
.life-cal-item{width:100%;border:1px solid transparent;text-align:left;cursor:pointer;font-family:inherit;transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease}
.life-cal-item:hover{transform:translateX(3px);background:color-mix(in srgb,var(--card-surface) 80%,var(--accent-cyan) 8%);border-color:color-mix(in srgb,var(--accent-cyan) 26%,transparent);box-shadow:0 8px 22px rgba(15,23,42,.05)}
.life-cal-item:focus-visible{outline:2px solid color-mix(in srgb,var(--accent-cyan) 45%,transparent);outline-offset:2px}
.life-cal-item-open{margin-left:auto;opacity:.35;transition:.18s ease}
.life-cal-item:hover .life-cal-item-open{opacity:1;transform:translate(1px,-1px)}

/* Business : fenêtres de détail au lieu de notifications seules. */
.cb-business-modal-card{width:min(700px,calc(100vw - 32px));max-height:min(760px,88vh);overflow:hidden;display:flex;flex-direction:column}
.cb-business-modal-body{min-height:130px;max-height:58vh;overflow:auto;padding:4px 2px 12px}
.cb-business-modal-actions{display:flex;gap:9px;justify-content:flex-end;align-items:center;flex-wrap:wrap;padding-top:12px;border-top:1px solid var(--card-border)}
.cb-business-list{display:flex;flex-direction:column;gap:8px}
.cb-business-list-row{width:100%;display:grid;grid-template-columns:42px 1fr auto;gap:11px;align-items:center;text-align:left;border:1px solid var(--card-border);background:var(--card-surface);color:var(--text-primary);border-radius:13px;padding:11px 12px;cursor:pointer;transition:.18s ease;font-family:inherit}
.cb-business-list-row:hover{transform:translateY(-1px);border-color:color-mix(in srgb,var(--burgundy-btn) 28%,var(--card-border));background:color-mix(in srgb,var(--card-surface) 95%,var(--burgundy-btn) 5%);box-shadow:0 9px 24px rgba(15,23,42,.05)}
.cb-business-list-row>span:nth-child(2){display:flex;min-width:0;flex-direction:column;gap:3px}
.cb-business-list-row strong{font-size:.8rem;white-space:normal}
.cb-business-list-row small{font-size:.7rem;color:var(--text-muted)}
.cb-business-list-icon{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;background:rgba(138,75,86,.08);color:var(--burgundy-btn)}
.cb-business-detail-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.cb-business-detail-grid article{display:flex;flex-direction:column;gap:6px;padding:15px;border:1px solid var(--card-border);border-radius:13px;background:rgba(148,163,184,.035)}
.cb-business-detail-grid article.wide{grid-column:1/-1}
.cb-business-detail-grid span{font-size:.68rem;font-weight:800;text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted)}
.cb-business-detail-grid strong{font-size:.9rem;color:var(--text-primary)}
.cb-business-doc-preview{display:grid;grid-template-columns:72px 1fr;gap:16px;align-items:start;padding:18px;border:1px solid var(--card-border);border-radius:15px;background:linear-gradient(145deg,rgba(138,75,86,.06),rgba(255,255,255,.02))}
.cb-business-doc-preview>div:last-child{display:flex;flex-direction:column;gap:8px;min-width:0}.cb-business-doc-preview p{font-size:.77rem;line-height:1.65;color:var(--text-muted)}
.cb-business-doc-badge{height:72px;border-radius:16px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:5px;background:var(--card-surface);border:1px solid var(--card-border);color:var(--burgundy-btn)}
.cb-business-doc-badge span{font-size:.62rem;font-weight:900;letter-spacing:.05em}.cb-business-empty{padding:28px;text-align:center;color:var(--text-muted);font-size:.8rem}

/* Business Analytics : hiérarchie, profondeur et animations plus premium. */
.cb-business-analytics-card{position:relative;overflow:hidden;background:linear-gradient(145deg,var(--card-surface),color-mix(in srgb,var(--card-surface) 94%,var(--burgundy-btn) 6%))}
.cb-business-analytics-card::before{content:"";position:absolute;width:300px;height:300px;border-radius:50%;right:-130px;top:-180px;background:radial-gradient(circle,rgba(138,75,86,.10),transparent 68%);pointer-events:none}
.cb-analytics-header{position:relative;z-index:1;align-items:flex-end}
.cb-analytics-header h3{font-size:1rem!important;margin-top:3px}
.cb-analytics-live{display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:rgba(16,185,129,.08);color:#059669;font-size:.68rem;font-weight:800;border:1px solid rgba(16,185,129,.13)}
.cb-analytics-tri-grid{position:relative;z-index:1;gap:18px}
.cb-analytics-kpi-subgrid,.cb-donut-chart-box,.cb-top-services-box{padding:15px;border-radius:15px;border:1px solid color-mix(in srgb,var(--card-border) 88%,transparent);background:rgba(255,255,255,.28)}
[data-theme="obsidian"] .cb-analytics-kpi-subgrid,[data-theme="obsidian"] .cb-donut-chart-box,[data-theme="obsidian"] .cb-top-services-box{background:rgba(255,255,255,.025)}
.cb-ana-kpi-item{position:relative;padding:2px 0 10px;border-bottom:1px solid rgba(148,163,184,.12)}
.cb-ana-kpi-item:nth-last-child(-n+2){border-bottom:0;padding-bottom:0}
.cb-ana-val{transition:transform .2s ease,filter .2s ease}.cb-ana-val.metric-animating{transform:translateY(-1px);filter:saturate(1.12)}
.cb-source-dot{display:inline-block;width:8px;height:8px;border-radius:50%;background:var(--dot);margin-right:7px;box-shadow:0 0 0 3px color-mix(in srgb,var(--dot) 14%,transparent)}
.cb-sources-legend li span{display:flex;align-items:center}.cb-sources-legend li strong{color:var(--text-primary);font-size:.68rem}
.demand-progress-bg{height:7px;overflow:hidden;border-radius:999px;background:rgba(148,163,184,.13)}
.demand-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--burgundy-btn),color-mix(in srgb,var(--burgundy-btn) 45%,#f0cf4d));transition:width .85s cubic-bezier(.22,.8,.25,1)}
.cb-donut-chart-box canvas{filter:drop-shadow(0 8px 16px rgba(138,75,86,.08))}

/* Finance dashboard : mouvement plus fluide et lisibilité du graphe. */
.finance-analytics-card{overflow:hidden;position:relative}
.finance-analytics-card::after{content:"";position:absolute;inset:auto -60px -95px auto;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle,rgba(14,165,233,.08),transparent 70%);pointer-events:none}
.finance-analytics-card .canvas-chart-holder{height:190px;margin-top:12px;position:relative;z-index:1}
.finance-analytics-card .kpi-pill{transition:transform .2s ease,box-shadow .2s ease}.finance-analytics-card .kpi-pill:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,23,42,.05)}
.finance-analytics-card .kpi-pill strong.metric-animating{display:inline-block;transform:translateY(-1px)}

@media(max-width:760px){.cb-business-detail-grid{grid-template-columns:1fr}.cb-business-detail-grid article.wide{grid-column:auto}.cb-business-doc-preview{grid-template-columns:1fr}.cb-business-doc-badge{width:72px}.cb-business-modal-actions>*{flex:1;justify-content:center}.well-review-head-actions{justify-content:flex-start}.cb-analytics-live{display:none}}


/* ==================== V14.30+ ANALYTICS & PROGRESS PREMIUM ANIMATIONS ==================== */
@keyframes nexusFadeRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes nexusPulseGlow{0%,100%{box-shadow:0 0 0 0 rgba(16,185,129,.10)}50%{box-shadow:0 0 0 10px rgba(16,185,129,0)}}

.cb-business-analytics-card,.acct-donut-card,.portal-progress-panel{animation:nexusFadeRise .68s cubic-bezier(.2,.8,.2,1) both}
.cb-analytics-kpi-subgrid,.cb-donut-chart-box,.cb-top-services-box{backdrop-filter:blur(16px);box-shadow:0 10px 30px rgba(20,24,38,.04)}
.cb-analytics-kpi-subgrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0}
.cb-ana-kpi-item{padding:12px 14px 14px;border-radius:12px;transition:transform .24s ease,box-shadow .24s ease,background .24s ease}
.cb-ana-kpi-item:hover{transform:translateY(-3px);background:rgba(255,255,255,.34);box-shadow:0 14px 30px rgba(31,41,55,.05)}
.cb-ana-val{font-size:2rem;margin:6px 0 5px;line-height:1}
.cb-kpi-trend{max-width:17ch;line-height:1.35}
.cb-donut-chart-box .flex{align-items:center;gap:18px}
.cb-donut-chart-box .flex>div:first-child{position:relative;width:138px!important;height:138px!important;flex:0 0 138px;border-radius:50%;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.65) 0,rgba(255,255,255,.32) 45%,rgba(138,75,86,.08) 100%);padding:8px;box-shadow:inset 0 1px 0 rgba(255,255,255,.65),0 10px 25px rgba(138,75,86,.08)}
.cb-sources-legend{gap:8px}
.cb-sources-legend li{padding:7px 9px;border-radius:10px;align-items:center;gap:8px;transition:background .2s ease,transform .2s ease}
.cb-sources-legend li:hover{background:rgba(148,163,184,.08);transform:translateX(2px)}
.service-demand-bar-row{gap:7px;padding:4px 0}
.service-demand-bar-row .top-line{font-size:.82rem}
.demand-progress-bg{height:8px;background:rgba(148,163,184,.14)}
.demand-progress-fill{box-shadow:0 6px 14px rgba(138,75,86,.16)}
.cb-analytics-live{animation:nexusPulseGlow 2.8s ease-in-out infinite}

.acct-chart-grid{gap:16px}
.acct-donut-card{grid-template-columns:240px 1fr;min-height:264px;padding:20px;border:1px solid color-mix(in srgb,var(--card-border) 86%,transparent);box-shadow:0 12px 28px rgba(20,24,38,.04);overflow:hidden;position:relative}
.acct-donut-card::after{content:"";position:absolute;inset:auto -34px -42px auto;width:140px;height:140px;border-radius:50%;background:radial-gradient(circle,rgba(138,75,86,.08),transparent 72%);pointer-events:none}
.acct-donut-holder{width:200px;height:200px;border-radius:50%;background:radial-gradient(circle at center,rgba(255,255,255,.78),rgba(255,255,255,.34));box-shadow:inset 0 1px 0 rgba(255,255,255,.7),0 10px 28px rgba(138,75,86,.08)}
.acct-donut-center strong{font-size:1.12rem;line-height:1.05}
.acct-donut-center small{text-transform:uppercase;letter-spacing:.08em;font-size:.58rem}
.acct-chart-legend{gap:10px}
.acct-legend-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 12px;padding:10px 12px;border-radius:14px;background:rgba(148,163,184,.05);border:1px solid rgba(148,163,184,.10)}
.acct-legend-main{display:flex;justify-content:space-between;gap:12px;align-items:center;grid-column:1/-1}
.acct-legend-main span{display:flex;align-items:center;gap:8px;color:var(--text-primary);font-size:.74rem;font-weight:700}
.acct-legend-main b{font-size:.72rem}
.acct-legend-meter{grid-column:1/2;height:7px;border-radius:999px;background:rgba(148,163,184,.15);overflow:hidden}
.acct-legend-meter i{display:block;height:100%;border-radius:inherit;box-shadow:0 5px 12px rgba(138,75,86,.18)}
.acct-legend-card em{font-style:normal;font-size:.67rem;color:var(--text-muted);justify-self:end;align-self:center}

.portal-progress-panel{grid-template-columns:minmax(340px,420px) 1fr;min-height:296px;background:linear-gradient(145deg,var(--card-surface),color-mix(in srgb,var(--card-surface) 94%,var(--theme-accent) 6%))}
.portal-progress-hero{padding:28px 28px 24px;position:relative;overflow:hidden}
.portal-progress-hero::before{content:"";position:absolute;top:-36px;left:-42px;width:210px;height:210px;border-radius:50%;background:radial-gradient(circle,rgba(138,75,86,.14),transparent 72%);pointer-events:none}
.portal-progress-topline{display:flex;justify-content:space-between;gap:12px;align-items:center;position:relative;z-index:1}
.portal-progress-status-badge{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;border-radius:999px;font-size:.72rem;font-weight:800;border:1px solid rgba(148,163,184,.16);background:rgba(255,255,255,.55);color:var(--text-primary)}
.portal-progress-status-badge.starting{background:rgba(245,158,11,.12);color:#b7791f}
.portal-progress-status-badge.active{background:rgba(59,130,246,.10);color:#2563eb}
.portal-progress-status-badge.steady{background:rgba(16,185,129,.10);color:#059669}
.portal-progress-status-badge.done{background:rgba(139,92,246,.12);color:#7c3aed}
.portal-progress-number{margin:18px 0 14px;align-items:flex-end;position:relative;z-index:1}
.portal-progress-number strong{font-size:3.05rem;letter-spacing:-.04em}
.portal-progress-stage-stack{display:flex;flex-direction:column;gap:5px;align-items:flex-end;text-align:right}
.portal-progress-stage-stack span{font-size:1rem;color:var(--text-primary);font-weight:700}
.portal-progress-stage-stack small{font-size:.76rem;color:var(--text-muted)}
.portal-progress-track{height:10px;position:relative;overflow:visible}
.portal-progress-track::after{content:"";position:absolute;inset:0;border-radius:999px;background:rgba(255,255,255,.45);box-shadow:inset 0 1px 3px rgba(15,23,42,.05)}
.portal-progress-track>div{position:relative;z-index:1;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--portal-accent),color-mix(in srgb,var(--portal-accent) 56%,white));box-shadow:0 10px 18px color-mix(in srgb,var(--portal-accent) 26%,transparent)}
.portal-progress-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:16px;position:relative;z-index:1}
.portal-progress-mini-card{padding:12px 12px 11px;border-radius:14px;background:rgba(255,255,255,.45);border:1px solid rgba(148,163,184,.12);display:flex;flex-direction:column;gap:3px;min-height:84px;backdrop-filter:blur(10px)}
.portal-progress-mini-card small{font-size:.66rem;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted);font-weight:800}
.portal-progress-mini-card strong{font-size:.9rem;color:var(--text-primary);line-height:1.3}
.portal-progress-mini-card span{font-size:.72rem;color:var(--text-muted);line-height:1.35}
.portal-progress-helper{font-size:.78rem;margin-top:14px;line-height:1.45;position:relative;z-index:1}
.portal-project-meta-table{padding:24px;align-items:stretch;align-content:start;gap:12px}
.portal-project-meta-table label{padding:10px 11px;border-radius:14px;background:rgba(255,255,255,.34);border:1px solid rgba(148,163,184,.10)}
.portal-project-meta-table .modern-input{background:rgba(255,255,255,.64);border-color:rgba(148,163,184,.15)}

@media(max-width:980px){
  .acct-donut-card{grid-template-columns:1fr}
  .acct-donut-holder{margin-bottom:10px}
  .portal-progress-panel{grid-template-columns:1fr}
  .portal-progress-metrics{grid-template-columns:1fr}
}


/* Accounting donut center fix + cleaner single-category ring */
.acct-donut-center{z-index:2;text-align:center;padding:0 24px}
.acct-donut-center strong{display:block;max-width:110px;white-space:normal;word-break:keep-all}
.acct-donut-center small{display:block;max-width:120px;line-height:1.2;margin-top:4px}
.acct-donut-holder canvas{position:relative;z-index:1}
