:root {
  --fond: #fff;
  --fond-2: #fafafa;
  --carte: #fff;
  --texte: #18181b;
  --doux: #71717a;
  --filet: #e4e4e7;
  --accent: #f4f4f5;
  --bleu: #2563eb;
  --bleu-doux: rgba(37, 99, 235, .1);
  --vert: #059669;
  --vert-doux: #ecfdf5;
  --ambre: #b45309;
  --ambre-doux: #fffbeb;
  --rouge: #dc2626;
  --violet: #7c3aed;
  --rayon: 8px;
  color-scheme: light;
}

* { box-sizing: border-box; }
html, body { margin: 0; min-width: 800px; min-height: 100%; }
body {
  background: var(--fond); color: var(--texte);
  font: 13px/1.5 ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  -webkit-font-smoothing: antialiased;
}
a { color: inherit; text-decoration: none; }
button, input, textarea, select { font: inherit; }
button { color: inherit; }
h1, h2, h3, p { margin-top: 0; }
h1, h2, h3 { font-weight: 600; }
.mono { font-family: ui-monospace, SFMono-Regular, Menlo, monospace; font-variant-numeric: tabular-nums; }
.doux { color: var(--doux); }
.petit { font-size: 11px; }
.gras { font-weight: 600; }
.droite { text-align: right; }

.brand-app { display: grid; grid-template-columns: 205px minmax(0, 1fr); min-height: 100vh; }
.brand-rail {
  position: sticky; top: 0; height: 100vh; padding: 12px; border-right: 1px solid var(--filet);
  background: var(--fond-2); display: flex; flex-direction: column; gap: 14px;
}
.brand-signature { display: flex; align-items: center; gap: 8px; height: 30px; padding: 0 6px; font-weight: 650; }
.brand-mark { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 5px; color: white; background: #18181b; font-size: 11px; }
.brand-env { margin-left: auto; padding: 0 5px; border: 1px solid var(--filet); border-radius: 4px; color: var(--doux); font-size: 10px; font-weight: 500; }
.brand-selector { display: flex; align-items: center; gap: 8px; border: 1px solid var(--filet); border-radius: 7px; padding: 7px 8px; background: var(--carte); }
.brand-avatar { display: grid; place-items: center; flex: none; width: 28px; height: 28px; border-radius: 6px; background: #171717; color: #d9ff3f; font-weight: 800; }
.brand-selector-text { min-width: 0; }
.brand-selector-text b, .brand-selector-text span { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.brand-selector-text span { font-size: 10px; color: var(--doux); }
.brand-chevron { margin-left: auto; color: var(--doux); }
.brand-nav { display: flex; flex-direction: column; gap: 2px; }
.brand-nav-group { padding: 11px 8px 4px; color: #a1a1aa; font-size: 10px; }
.brand-nav a { display: flex; align-items: center; gap: 8px; min-height: 31px; padding: 6px 8px; border-radius: 6px; color: var(--doux); font-weight: 500; }
.brand-nav a:hover, .brand-nav a.actif { color: var(--texte); background: var(--accent); }
.brand-nav svg { width: 15px; height: 15px; stroke-width: 1.7; flex: none; }
.brand-nav-count { margin-left: auto; color: var(--doux); font-size: 10px; }
.brand-rail-bottom { margin-top: auto; }
.brand-health { border-top: 1px solid var(--filet); padding: 11px 7px 0; color: var(--doux); font-size: 11px; }
.brand-health strong { color: var(--texte); font-weight: 600; }
.brand-health-line { display: flex; align-items: center; gap: 6px; margin-top: 5px; }
.status-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--vert); flex: none; }
.status-dot.amber { background: #f59e0b; }

.brand-main { min-width: 0; padding: 20px 24px 52px; }
.brand-main-inner { width: 100%; max-width: 1420px; margin: 0 auto; }
.brand-topbar { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; margin-bottom: 16px; }
.brand-breadcrumb { margin-bottom: 3px; color: var(--doux); font-size: 11px; }
.brand-title { margin-bottom: 3px; font-size: 19px; line-height: 1.3; letter-spacing: -.01em; }
.brand-subtitle { margin: 0; max-width: 78ch; color: var(--doux); }
.brand-actions { display: flex; align-items: center; gap: 7px; }
.btn { display: inline-flex; align-items: center; justify-content: center; gap: 6px; height: 30px; padding: 0 10px; border: 1px solid var(--filet); border-radius: 6px; background: var(--carte); cursor: pointer; font-weight: 500; white-space: nowrap; }
.btn:hover { background: var(--accent); }
.btn.primaire { border-color: var(--texte); background: var(--texte); color: white; }
.btn:disabled { cursor: not-allowed; opacity: .45; }
.btn.mini { height: 25px; padding: 0 8px; font-size: 11px; }
.btn.danger { color: var(--rouge); }
.btn:focus-visible, a:focus-visible, input:focus-visible, textarea:focus-visible, select:focus-visible { outline: 2px solid var(--bleu); outline-offset: 2px; }
.icone-btn { display: grid; place-items: center; width: 30px; height: 30px; padding: 0; border: 1px solid var(--filet); border-radius: 6px; background: var(--carte); cursor: pointer; }

.version-strip { display: grid; grid-template-columns: minmax(0, 1fr) auto auto; align-items: center; gap: 20px; margin-bottom: 16px; border: 1px solid var(--filet); border-left: 3px solid var(--bleu); border-radius: var(--rayon); padding: 9px 12px; background: var(--fond-2); }
.version-strip strong { display: block; font-size: 12px; }
.version-strip p { margin: 1px 0 0; color: var(--doux); font-size: 11px; }
.version-meta { color: var(--doux); font-size: 11px; white-space: nowrap; }
.progress { height: 5px; border-radius: 99px; overflow: hidden; background: var(--filet); }
.progress span { display: block; height: 100%; border-radius: inherit; background: var(--bleu); }

.grid { display: grid; gap: 12px; }
.grid-2 { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.grid-3 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
.grid-4 { grid-template-columns: repeat(4, minmax(0, 1fr)); }
.grid-sidebar { grid-template-columns: minmax(0, 1fr) 310px; align-items: start; }
.grid-library { grid-template-columns: 218px minmax(0, 1fr); align-items: start; }
.card { border: 1px solid var(--filet); border-radius: 10px; background: var(--carte); }
.card-head { display: flex; align-items: flex-start; justify-content: space-between; gap: 12px; padding: 12px 14px; border-bottom: 1px solid var(--filet); }
.card-head h2, .card-head h3 { margin: 0; font-size: 13px; }
.card-head p { margin: 2px 0 0; color: var(--doux); font-size: 11px; }
.card-body { padding: 14px; }
.card.flush .card-body { padding: 0; }
.metric-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border: 1px solid var(--filet); border-radius: 10px; overflow: hidden; background: var(--filet); gap: 1px; margin-bottom: 12px; }
.metric { padding: 11px 13px; background: var(--carte); }
.metric-label { color: var(--doux); font-size: 11px; }
.metric-value { margin-top: 2px; font-size: 18px; font-weight: 650; letter-spacing: -.02em; }
.metric-foot { margin-top: 2px; color: var(--doux); font-size: 10px; }
.metric-foot.ok { color: var(--vert); }
.metric-foot.warn { color: var(--ambre); }
.badge { display: inline-flex; align-items: center; gap: 5px; min-height: 20px; padding: 1px 7px; border-radius: 999px; background: var(--bleu-doux); color: var(--bleu); font-size: 10.5px; font-weight: 600; white-space: nowrap; }
.badge.neutral { background: var(--accent); color: var(--doux); }
.badge.ok { background: var(--vert-doux); color: var(--vert); }
.badge.warn { background: var(--ambre-doux); color: var(--ambre); }
.badge.danger { background: #fef2f2; color: var(--rouge); }
.badge.violet { background: #f5f3ff; color: var(--violet); }

.brand-table { width: 100%; border-collapse: collapse; }
.brand-table th, .brand-table td { padding: 9px 12px; border-bottom: 1px solid var(--filet); text-align: left; vertical-align: middle; }
.brand-table th { color: var(--doux); font-size: 10.5px; font-weight: 500; }
.brand-table tbody tr:last-child td { border-bottom: 0; }
.brand-table tbody tr:hover { background: var(--fond-2); }
.source-line { display: flex; align-items: center; gap: 8px; }
.source-thumb { display: grid; place-items: center; width: 34px; height: 34px; flex: none; overflow: hidden; border-radius: 6px; color: white; background: linear-gradient(145deg, #171717 0 52%, #d9ff3f 52%); font-weight: 800; }
.source-thumb img { width: 100%; height: 100%; object-fit: cover; }

.task-list { display: flex; flex-direction: column; }
.task { display: grid; grid-template-columns: 22px minmax(0, 1fr) auto; gap: 9px; align-items: flex-start; padding: 10px 14px; border-bottom: 1px solid var(--filet); }
.task:last-child { border-bottom: 0; }
.task-state { display: grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; background: var(--vert-doux); color: var(--vert); font-size: 11px; font-weight: 800; }
.task-state.pending { background: var(--ambre-doux); color: var(--ambre); }
.task-state.idle { background: var(--accent); color: var(--doux); }
.task b { display: block; font-size: 12px; }
.task p { margin: 1px 0 0; color: var(--doux); font-size: 11px; }

.field { display: flex; flex-direction: column; gap: 5px; }
.field + .field { margin-top: 12px; }
.field label, .field-title { font-size: 11px; font-weight: 600; }
.field-help { margin: 0; color: var(--doux); font-size: 10.5px; }
.input, .textarea, .select { width: 100%; border: 1px solid var(--filet); border-radius: 6px; background: var(--fond); color: var(--texte); }
.input, .select { height: 31px; padding: 0 9px; }
.textarea { min-height: 76px; padding: 8px 9px; line-height: 1.45; resize: vertical; }
.toggle-row { display: flex; align-items: center; justify-content: space-between; gap: 15px; padding: 9px 0; border-bottom: 1px solid var(--filet); }
.toggle-row:last-child { border-bottom: 0; }
.toggle { position: relative; width: 30px; height: 17px; flex: none; border: 0; border-radius: 99px; background: var(--filet); cursor: pointer; }
.toggle::after { content: ""; position: absolute; top: 2px; left: 2px; width: 13px; height: 13px; border-radius: 50%; background: white; box-shadow: 0 1px 2px rgba(0,0,0,.2); }
.toggle.on { background: var(--bleu); }
.toggle.on::after { left: 15px; }

.chip-set { display: flex; flex-wrap: wrap; gap: 6px; }
.chip { display: inline-flex; align-items: center; gap: 5px; min-height: 25px; padding: 2px 8px; border: 1px solid var(--filet); border-radius: 999px; background: var(--carte); color: var(--doux); font-size: 11px; }
.chip b { color: var(--texte); font-weight: 600; }
.chip button { border: 0; padding: 0; color: #a1a1aa; background: transparent; cursor: pointer; }

.color-grid { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 8px; }
.color-swatch { overflow: hidden; border: 1px solid var(--filet); border-radius: 8px; }
.color-swatch-color { height: 58px; }
.color-swatch figcaption { padding: 7px 8px; }
.color-swatch b, .color-swatch span { display: block; }
.color-swatch b { font-size: 11px; }
.color-swatch span { color: var(--doux); font-size: 10px; }
.logo-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.logo-tile { min-height: 114px; padding: 12px; border: 1px solid var(--filet); border-radius: 8px; display: flex; flex-direction: column; justify-content: space-between; }
.logo-tile.dark { background: #171717; color: white; border-color: #171717; }
.logo-word { font-size: 19px; font-weight: 850; letter-spacing: -.06em; }
.logo-word i { color: #b9ff2c; font-style: normal; }
.logo-tile span { color: var(--doux); font-size: 10px; }
.logo-tile.dark span { color: #a1a1aa; }
.type-sample { padding: 14px 0; border-bottom: 1px solid var(--filet); }
.type-sample:last-child { border-bottom: 0; }
.type-sample .sample { margin: 4px 0; font-size: 24px; font-weight: 750; letter-spacing: -.035em; }

.asset-toolbar { display: flex; justify-content: space-between; align-items: center; gap: 10px; margin-bottom: 10px; }
.search { position: relative; width: 280px; }
.search .input { padding-left: 29px; }
.search span { position: absolute; left: 9px; top: 6px; color: var(--doux); }
.filter-list { padding: 7px; border: 1px solid var(--filet); border-radius: 8px; }
.filter-list button { width: 100%; display: flex; align-items: center; justify-content: space-between; min-height: 30px; padding: 5px 7px; border: 0; border-radius: 5px; background: transparent; cursor: pointer; color: var(--doux); text-align: left; }
.filter-list button:hover, .filter-list button.on { color: var(--texte); background: var(--accent); }
.asset-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.asset-card { overflow: hidden; border: 1px solid var(--filet); border-radius: 9px; background: var(--carte); }
.asset-art { position: relative; height: 172px; overflow: hidden; background: #ededee; }
.asset-art img, .asset-art svg { display: block; width: 100%; height: 100%; object-fit: cover; }
.asset-art .badge { position: absolute; top: 7px; left: 7px; backdrop-filter: blur(8px); }
.asset-info { padding: 9px 10px; }
.asset-info strong { display: block; font-size: 12px; }
.asset-info p { margin: 2px 0 7px; color: var(--doux); font-size: 10.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.asset-meta { display: flex; align-items: center; justify-content: space-between; gap: 5px; }

.talent-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
.talent-card { overflow: hidden; border: 1px solid var(--filet); border-radius: 10px; }
.talent-cover { display: grid; grid-template-columns: 1.4fr 1fr; gap: 2px; height: 220px; min-height: 0; overflow: hidden; background: var(--filet); }
.talent-cover img { width: 100%; height: 100%; min-height: 0; object-fit: cover; background: var(--accent); }
.talent-side { display: grid; grid-template-rows: 1fr 1fr; gap: 2px; min-height: 0; overflow: hidden; }
.talent-side img { min-height: 0; }
.talent-info { position: relative; padding: 11px 12px; background: var(--carte); }
.talent-title { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.talent-title h3 { margin: 0; font-size: 13px; }
.talent-info p { margin: 4px 0 8px; color: var(--doux); font-size: 11px; }

.template-list { display: flex; flex-direction: column; gap: 10px; }
.template-row { display: grid; grid-template-columns: 132px minmax(0, 1fr) 240px; gap: 14px; padding: 11px; border: 1px solid var(--filet); border-radius: 9px; }
.template-preview { display: grid; grid-template-columns: repeat(3, 1fr); gap: 2px; height: 92px; border-radius: 6px; overflow: hidden; background: #18181b; padding: 3px; }
.template-preview-photo img { width: 100%; height: 100%; object-fit: cover; min-width: 0; }
.template-slide { display: flex; align-items: end; padding: 5px; color: white; background: linear-gradient(150deg, #222 40%, #d9ff3f 40% 52%, #6554ff 52%); font-size: 8px; font-weight: 700; }
.template-row h3 { margin: 1px 0 3px; font-size: 13px; }
.template-row p { margin: 0 0 8px; color: var(--doux); font-size: 11px; }
.slot-list { display: flex; flex-direction: column; gap: 4px; }
.slot { display: flex; align-items: center; justify-content: space-between; gap: 8px; padding: 5px 7px; border-radius: 5px; background: var(--fond-2); font-size: 10.5px; }

.onboarding-layout { display: grid; grid-template-columns: 230px minmax(0, 1fr); gap: 14px; align-items: start; }
.steps { border: 1px solid var(--filet); border-radius: 9px; overflow: hidden; }
.step { display: grid; grid-template-columns: 22px minmax(0, 1fr); gap: 8px; padding: 10px; border-bottom: 1px solid var(--filet); }
.step:last-child { border-bottom: 0; }
.step.on { background: var(--bleu-doux); }
.step-index { display: grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; border: 1px solid var(--filet); color: var(--doux); font-size: 10px; }
.step.done .step-index { border-color: var(--vert); background: var(--vert); color: white; }
.step.on .step-index { border-color: var(--bleu); background: var(--bleu); color: white; }
.step b { display: block; font-size: 11.5px; }
.step span { color: var(--doux); font-size: 10px; }
.analysis-feed { display: flex; flex-direction: column; gap: 6px; }
.analysis-event { display: grid; grid-template-columns: 16px minmax(0, 1fr) auto; gap: 8px; padding: 8px 9px; border-radius: 6px; background: var(--fond-2); font-size: 11px; }
.analysis-event strong { font-weight: 600; }
.analysis-event time { color: var(--doux); }
.post-strip { display: grid; grid-template-columns: repeat(6, 1fr); gap: 5px; margin: 10px 0 14px; }
.post-strip div { aspect-ratio: 1; border-radius: 5px; background: linear-gradient(145deg, #18181b 0 44%, #d9ff3f 44% 55%, #6958ff 55%); }
.post-strip div:nth-child(2n) { background: linear-gradient(35deg, #e8e8eb 0 45%, #18181b 45%); }
.post-strip div:nth-child(3n) { background: linear-gradient(160deg, #e2552d 0 38%, #f5d749 38% 52%, #161616 52%); }

.rule-list { display: flex; flex-direction: column; }
.rule-row { display: grid; grid-template-columns: 92px minmax(0, 1fr) 150px 118px; gap: 12px; align-items: center; padding: 10px 12px; border-bottom: 1px solid var(--filet); }
.rule-row:last-child { border-bottom: 0; }
.rule-row p { margin: 2px 0 0; color: var(--doux); font-size: 10.5px; }
.confidence { display: flex; align-items: center; gap: 8px; }
.confidence .progress { flex: 1; }
.confidence span { width: 28px; color: var(--doux); font-size: 10px; }
.evidence { display: flex; align-items: center; }
.evidence span { display: grid; place-items: center; width: 26px; height: 26px; margin-left: -5px; border: 2px solid white; border-radius: 5px; background: #18181b; color: white; font-size: 8px; }
.evidence span:first-child { margin-left: 0; }

.qa-score { display: grid; grid-template-columns: 112px minmax(0, 1fr); gap: 15px; align-items: center; }
.score-ring { display: grid; place-items: center; width: 102px; height: 102px; border-radius: 50%; background: conic-gradient(var(--vert) 0 87%, var(--filet) 87%); }
.score-ring::before { content: "87"; display: grid; place-items: center; width: 78px; height: 78px; border-radius: 50%; background: var(--carte); font-size: 26px; font-weight: 700; }
.qa-check { display: grid; grid-template-columns: 16px minmax(0, 1fr) auto; gap: 8px; align-items: start; padding: 8px 0; border-bottom: 1px solid var(--filet); }
.qa-check:last-child { border-bottom: 0; }
.qa-check .symbol { color: var(--vert); font-weight: 800; }
.qa-check.warn .symbol, .qa-check.warn strong { color: var(--ambre); }
.qa-check p { margin: 1px 0 0; color: var(--doux); font-size: 10.5px; }
.preview-frame { padding: 16px; background: #ececef; }
.preview-post { width: 330px; margin: 0 auto; overflow: hidden; border: 1px solid #dddde1; border-radius: 8px; background: white; box-shadow: 0 6px 18px rgba(24,24,27,.08); }
.preview-post-head { display: flex; align-items: center; gap: 7px; padding: 8px; color: #18181b; font-size: 10px; }
.preview-post-head span { width: 22px; height: 22px; border-radius: 50%; background: #18181b; }
.preview-post-art { position: relative; height: 360px; overflow: hidden; background: #171717; color: white; }
.preview-post-art img { width: 100%; height: 100%; object-fit: cover; }
.preview-post-copy { position: absolute; left: 18px; right: 18px; bottom: 17px; z-index: 2; }
.preview-post-copy b { display: block; font-size: 28px; line-height: .95; letter-spacing: -.04em; }
.preview-post-copy em { display: inline-block; margin-top: 8px; padding: 3px 6px; background: #d9ff3f; color: #171717; font-style: normal; font-size: 9px; font-weight: 800; }
.preview-post-foot { padding: 9px; color: #18181b; font-size: 10px; }
.audit-line { display: grid; grid-template-columns: 76px minmax(0, 1fr); gap: 8px; padding: 6px 0; border-bottom: 1px solid var(--filet); font-size: 10.5px; }
.audit-line:last-child { border-bottom: 0; }
.audit-line time { color: var(--doux); font-family: ui-monospace, monospace; }
.notice { padding: 9px 11px; border: 1px solid var(--filet); border-left: 3px solid var(--ambre); border-radius: 7px; background: var(--fond-2); font-size: 11px; }
.notice.ok { border-left-color: var(--vert); }

.create-panel { margin-bottom: 12px; }
.create-panel summary { padding: 11px 14px; border-bottom: 1px solid var(--filet); cursor: pointer; font-weight: 600; }
.form-grid { margin-top: 12px; }
.form-grid .field + .field { margin-top: 0; }
.form-actions { display: flex; justify-content: flex-end; margin-top: 14px; }
.file-input { padding: 4px 6px; }
.check-row { display: flex; align-items: center; gap: 20px; margin-top: 12px; color: var(--doux); font-size: 11px; }
.check-row label { display: inline-flex; align-items: center; gap: 6px; }
.section-label { margin-top: 14px; }
.empty-state { padding: 24px; border: 1px dashed var(--filet); border-radius: 8px; color: var(--doux); text-align: center; }
.asset-placeholder { display: grid; place-items: center; width: 100%; height: 100%; color: var(--doux); font: 700 11px ui-monospace, monospace; }
.talent-cover.single { display: block; }
.color-grid.compact { grid-template-columns: repeat(2, minmax(0, 1fr)); }

/* AI-assisted brand charter */
.assistant-hero { margin-bottom: 12px; padding: 18px 20px; border: 1px solid #27272a; border-radius: 12px; background: #18181b; color: white; overflow: hidden; }
.assistant-hero.compact { margin-bottom: 14px; }
.assistant-kicker { display: flex; align-items: center; gap: 7px; margin-bottom: 9px; color: #d9ff3f; font-size: 10px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.assistant-kicker span { display: grid; place-items: center; width: 19px; height: 19px; border-radius: 5px; background: #d9ff3f; color: #18181b; font-size: 11px; }
.assistant-hero-grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(480px, .9fr); gap: 34px; align-items: end; }
.assistant-hero h2 { max-width: 680px; margin: 0 0 6px; font-size: 24px; line-height: 1.15; letter-spacing: -.035em; }
.assistant-hero p { max-width: 72ch; margin: 0; color: #a1a1aa; }
.assistant-flow { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1px; margin: 0; padding: 0; list-style: none; background: #3f3f46; border: 1px solid #3f3f46; border-radius: 8px; overflow: hidden; }
.assistant-flow li { display: grid; grid-template-columns: 24px 1fr; gap: 7px; min-height: 58px; padding: 9px; background: #27272a; }
.assistant-flow b { display: grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: #d9ff3f; color: #18181b; font-size: 10px; }
.assistant-flow strong,.assistant-flow span { display: block; }
.assistant-flow strong { color: white; font-size: 10.5px; }
.assistant-flow span { color: #a1a1aa; font-size: 9.5px; }
.cockpit-start-actions { display: flex; gap: 7px; margin-top: 13px; }
.assistant-hero .btn { border-color: #52525b; background: #27272a; color: white; }
.assistant-hero .btn.primaire { border-color: #d9ff3f; background: #d9ff3f; color: #18181b; }
.assistant-workspace { display: grid; grid-template-columns: minmax(0, 1fr) 310px; gap: 12px; align-items: start; }
.source-choice-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 8px; }
.source-choice { position: relative; display: grid; grid-template-columns: 30px 1fr; gap: 9px; min-height: 84px; padding: 11px; border: 1px solid var(--filet); border-radius: 9px; cursor: pointer; }
.source-choice:has(input:checked) { border-color: var(--bleu); box-shadow: 0 0 0 2px var(--bleu-doux); background: #f8faff; }
.source-choice:has(input:disabled) { cursor: not-allowed; opacity: .5; background: var(--fond-2); }
.source-choice input { position: absolute; top: 8px; right: 8px; accent-color: var(--bleu); }
.source-choice-icon { display: grid; place-items: center; width: 30px; height: 30px; border-radius: 7px; background: var(--accent); font-size: 17px; font-weight: 650; }
.source-choice strong,.source-choice small { display: block; padding-right: 14px; }
.source-choice strong { font-size: 11.5px; }
.source-choice small { margin-top: 3px; color: var(--doux); font-size: 10px; line-height: 1.4; }
.assistant-upload-zone { display: grid; grid-template-columns: minmax(0,1fr) 320px; gap: 14px; align-items: center; margin: 12px 0; padding: 12px; border: 1px dashed #a1a1aa; border-radius: 8px; background: var(--fond-2); }
.assistant-upload-zone[hidden] { display: none !important; }
.assistant-upload-zone strong,.assistant-upload-zone span { display: block; }
.assistant-upload-zone span { margin-top: 2px; color: var(--doux); font-size: 10px; }
.assistant-action-line { display: flex; align-items: center; justify-content: space-between; gap: 20px; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--filet); }
.assistant-action-line p { margin: 0; color: var(--doux); font-size: 10.5px; }
.assistant-check { display: flex; align-items: center; gap: 8px; padding: 7px 0; border-bottom: 1px solid var(--filet); font-size: 11px; }
.assistant-check span { color: var(--vert); font-weight: 800; }
.assistant-model-note { display: grid; grid-template-columns: 34px 1fr; gap: 9px; margin-top: 12px; padding: 10px; border-radius: 8px; background: #f5f3ff; }
.assistant-model-note>span { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 8px; background: var(--violet); color: white; font-size: 10px; font-weight: 800; }
.assistant-model-note strong { display: block; font-size: 11px; }.assistant-model-note p { margin: 2px 0 0; color: var(--doux); font-size: 10px; }
.suggestion-card,.manual-charter { margin-top: 12px; }
.suggestion-card>.card-head h2 { margin-top: 2px; max-width: 900px; font-size: 15px; }
.suggestion-card .assistant-kicker { margin: 0 0 3px; color: var(--violet); }
.suggestion-card .assistant-kicker span { background: #ede9fe; color: var(--violet); }
.suggestion-layout { display: grid; grid-template-columns: minmax(0,1fr) 350px; }
.suggestion-fields { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); border-right: 1px solid var(--filet); }
.suggestion-field { min-height: 110px; padding: 12px 14px; border-right: 1px solid var(--filet); border-bottom: 1px solid var(--filet); }
.suggestion-field:nth-child(2n) { border-right: 0; }
.suggestion-field-head { display: flex; align-items: center; justify-content: space-between; gap: 10px; }.suggestion-field-head strong { font-size: 11px; }
.suggestion-field p { margin: 7px 0 0; font-size: 11px; }
.confidence-pill { padding: 2px 6px; border-radius: 999px; background: var(--vert-doux); color: var(--vert); font-size: 9.5px; font-weight: 650; }.confidence-pill.medium { background: var(--ambre-doux); color: var(--ambre); }.confidence-pill.low { background:#fef2f2;color:var(--rouge); }
.suggestion-palette { display: flex; flex-wrap: wrap; gap: 7px; margin-top: 9px; }.suggestion-palette span { display:flex;align-items:center;gap:5px;font:10px ui-monospace,monospace; }.suggestion-palette i { width:18px;height:18px;border:1px solid var(--filet);border-radius:5px;background:var(--swatch); }
.evidence-details { margin-top: 8px; color: var(--doux); font-size: 9.5px; }.evidence-details summary { cursor:pointer;color:var(--bleu); }.evidence-details div { margin-top:5px;padding-left:8px;border-left:2px solid var(--filet); }
.suggestion-gaps { padding: 14px; }.suggestion-gaps>p { font-size:10.5px; }
.gap-question { display:grid;grid-template-columns:20px 1fr;gap:8px;padding:10px 0;border-bottom:1px solid var(--filet); }.gap-question>span { display:grid;place-items:center;width:19px;height:19px;border-radius:50%;background:var(--ambre-doux);color:var(--ambre);font-weight:800; }.gap-question strong { font-size:10.5px; }.gap-question p { margin:2px 0 0;color:var(--doux);font-size:10px; }
.apply-suggestion-form { display:flex;flex-direction:column;gap:7px;margin-top:14px; }.apply-suggestion-form .btn { width:100%; }
.manual-charter>summary { display:flex;align-items:center;justify-content:space-between;padding:12px 14px;cursor:pointer;list-style:none; }.manual-charter>summary strong,.manual-charter>summary small { display:block; }.manual-charter>summary small { margin-top:2px;color:var(--doux);font-size:10px; }.manual-charter[open]>summary { border-bottom:1px solid var(--filet); }
.onboarding-entry-actions { display:flex;align-items:center;justify-content:flex-end;gap:10px;color:#a1a1aa;font-size:10.5px; }
.learning-form label { display:flex; flex-direction:column; gap:5px; min-width:0; }
.learning-form label>span { font-size:11px; font-weight:600; color:var(--texte); }
.learning-form input,.learning-form select,.learning-form textarea { width:100%; min-width:0; border:1px solid var(--filet); border-radius:6px; background:var(--fond); color:var(--texte); padding:8px 9px; }
.learning-form textarea { min-height:60px; line-height:1.45; resize:vertical; }
.learning-sources { table-layout:fixed; }
.learning-sources td { overflow-wrap:anywhere; }
.learning-sources details p { max-height:180px; overflow:auto; white-space:pre-wrap; }

/* Iterative brand calibration */
.calibration-intro { display:grid;grid-template-columns:minmax(0,1fr) 610px;gap:36px;align-items:end;margin-bottom:12px;padding:26px 28px;border-radius:12px;background:#18181b;color:white; }
.calibration-index { display:inline-grid;place-items:center;width:31px;height:31px;border-radius:50%;background:#d9ff3f;color:#18181b;font-size:11px;font-weight:800; }
.calibration-intro h2 { margin:10px 0 7px;max-width:560px;font-size:27px;line-height:1.12;letter-spacing:-.04em; }.calibration-intro p { margin:0;max-width:64ch;color:#a1a1aa; }
.calibration-loop { display:grid;grid-template-columns:1fr 22px 1fr 22px 1fr 22px;gap:5px;align-items:center; }.calibration-loop div { min-height:66px;padding:11px;border:1px solid #3f3f46;border-radius:8px;background:#27272a; }.calibration-loop b,.calibration-loop span { display:block; }.calibration-loop b { font-size:11px; }.calibration-loop span { margin-top:3px;color:#a1a1aa;font-size:9.5px; }.calibration-loop i { color:#d9ff3f;text-align:center;font-style:normal;font-size:17px; }
.calibration-start-grid { display:grid;grid-template-columns:430px minmax(0,1fr);gap:18px; }.calibration-drop { display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:205px;padding:20px;border:1px dashed #a1a1aa;border-radius:9px;background:var(--fond-2);cursor:pointer;text-align:center; }.calibration-drop:hover { border-color:var(--bleu);background:#f8faff; }.calibration-drop input { margin-top:13px;max-width:310px; }.calibration-drop strong,.calibration-drop small { display:block; }.calibration-drop small { margin-top:3px;color:var(--doux);font-size:10px; }.drop-plus { display:grid;place-items:center;width:42px;height:42px;margin-bottom:10px;border-radius:10px;background:#18181b;color:#d9ff3f;font-size:23px; }
.calibration-start-action { display:flex;align-items:end;justify-content:space-between;gap:20px;margin-top:14px;padding-top:13px;border-top:1px solid var(--filet); }.calibration-start-action p { max-width:54ch;margin:0;color:var(--doux);font-size:10.5px; }
.calibration-header { display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:8px;padding:18px 20px;border:1px solid var(--filet);border-radius:10px;background:#18181b;color:white; }.calibration-eyebrow { margin-bottom:5px;color:#d9ff3f;font-size:10px;font-weight:700; }.calibration-header h2 { margin:0 0 4px;max-width:760px;font-size:19px;letter-spacing:-.025em; }.calibration-header p { margin:0;color:#a1a1aa;font-size:11px; }.calibration-meter { display:flex;align-items:center;gap:20px; }.calibration-meter>div:first-child strong,.calibration-meter>div:first-child span { display:block;text-align:right; }.calibration-meter>div:first-child strong { font-size:25px; }.calibration-meter>div:first-child span { color:#a1a1aa;font-size:9.5px; }.confidence-dial { display:grid;place-items:center;width:68px;height:68px;border-radius:50%;background:conic-gradient(#d9ff3f 0 calc(var(--confidence)*1%),#3f3f46 calc(var(--confidence)*1%) 100%);position:relative; }.confidence-dial::before { content:"";position:absolute;inset:5px;border-radius:50%;background:#18181b; }.confidence-dial b,.confidence-dial span { position:relative;z-index:1;display:block;text-align:center; }.confidence-dial b { margin-top:8px;font-size:15px; }.confidence-dial span { margin-top:-17px;color:#a1a1aa;font-size:8px; }
.calibration-progress { display:grid;grid-template-columns:repeat(5,1fr);gap:1px;margin-bottom:14px;border:1px solid var(--filet);border-radius:8px;overflow:hidden;background:var(--filet); }.calibration-progress span { display:flex;align-items:center;gap:7px;padding:7px 10px;background:white;color:var(--doux);font-size:10px; }.calibration-progress i { display:grid;place-items:center;width:18px;height:18px;border-radius:50%;border:1px solid var(--filet);font-style:normal;font-size:9px; }.calibration-progress span.done i { border-color:var(--vert);background:var(--vert);color:white; }.calibration-progress span.current { color:var(--texte);font-weight:600;background:#f8faff; }.calibration-progress span.current i { border-color:var(--bleu);background:var(--bleu);color:white; }
.calibration-main { display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:13px;align-items:start; }.contact-sheet-head { display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px;padding:0 1px; }.contact-sheet-head>div { display:flex;align-items:center;gap:10px; }.contact-sheet-head h2 { margin:0;font-size:14px; }.contact-sheet-head p { margin:2px 0 0;color:var(--doux);font-size:10.5px; }
.contact-sheet { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px; }.calibration-candidate { overflow:hidden;border:1px solid var(--filet);border-radius:10px;background:white; }.calibration-candidate.reviewed.yes { border-color:#86efac; }.calibration-candidate.reviewed.no { border-color:#fca5a5; }.calibration-candidate.reviewed.almost { border-color:#fcd34d; }.calibration-candidate figure { margin:0; }.calibration-candidate figure>img { display:block;width:100%;height:330px;object-fit:cover;background:var(--accent); }.calibration-candidate figcaption { display:grid;grid-template-columns:26px minmax(0,1fr) auto;gap:8px;align-items:start;padding:9px 10px;border-top:1px solid var(--filet); }.calibration-candidate figcaption>span { display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#18181b;color:white;font-size:9px;font-weight:700; }.calibration-candidate figcaption strong,.calibration-candidate figcaption small { display:block; }.calibration-candidate figcaption strong { font-size:11px; }.calibration-candidate figcaption small { margin-top:2px;color:var(--doux);font-size:9.5px;line-height:1.35; }.verdict-stamp { align-self:center;padding:2px 6px;border-radius:999px;background:var(--accent);font-size:9px;white-space:nowrap; }.reviewed.yes .verdict-stamp { background:var(--vert-doux);color:var(--vert); }.reviewed.no .verdict-stamp { background:#fef2f2;color:var(--rouge); }.reviewed.almost .verdict-stamp { background:var(--ambre-doux);color:var(--ambre); }
.candidate-feedback { padding:9px 10px 10px;border-top:1px solid var(--filet); }.verdict-choice { display:grid;grid-template-columns:repeat(3,1fr);gap:5px; }.verdict-choice label,.reason-chips label { position:relative;cursor:pointer; }.verdict-choice input,.reason-chips input { position:absolute;opacity:0;pointer-events:none; }.verdict-choice span { display:grid;place-items:center;min-height:29px;border:1px solid var(--filet);border-radius:6px;color:var(--doux);font-size:10.5px;font-weight:600; }.verdict-choice label:has(input:checked) span { border-color:#18181b;background:#18181b;color:white; }.feedback-reasons { margin-top:9px;padding-top:8px;border-top:1px solid var(--filet); }.feedback-reasons[hidden] { display:none!important; }.reason-chips { display:flex;flex-wrap:wrap;gap:5px;margin:6px 0 8px; }.reason-chips span { display:inline-flex;min-height:24px;align-items:center;padding:2px 7px;border:1px solid var(--filet);border-radius:999px;color:var(--doux);font-size:9.5px; }.reason-chips label:has(input:checked) span { border-color:var(--ambre);background:var(--ambre-doux);color:var(--ambre); }.feedback-reasons .textarea { min-height:54px;font-size:10px; }.feedback-submit { width:100%;margin-top:8px; }.candidate-feedback-summary { min-height:48px;padding:9px 10px;border-top:1px solid var(--filet); }.candidate-feedback-summary p { margin:6px 0 0;font-size:10px; }.candidate-feedback-summary small { display:block;margin-top:6px;color:var(--vert);font-size:9.5px; }
.round-actions { display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:12px;padding:13px 14px;border:1px solid var(--filet);border-left:3px solid var(--bleu);border-radius:8px;background:var(--fond-2); }.round-actions strong { font-size:11.5px; }.round-actions p { margin:2px 0 0;color:var(--doux);font-size:10px; }.round-actions>div:last-child { display:flex;gap:7px; }
.learning-sidebar { display:grid;gap:10px;position:sticky;top:12px; }.preference-list { padding-top:3px;padding-bottom:3px; }.preference-item { padding:10px 0;border-bottom:1px solid var(--filet); }.preference-item:last-child { border-bottom:0; }.preference-item>div { display:flex;justify-content:space-between;gap:7px; }.preference-item strong { font-size:10.5px; }.preference-item span { color:var(--bleu);font-size:9.5px;font-weight:650; }.preference-item p { margin:4px 0 0;color:var(--doux);font-size:9.5px; }.preference-item p b { color:var(--texte); }.question-list { display:grid;gap:7px; }.question-list>div:not(.notice) { display:grid;grid-template-columns:19px 1fr;gap:7px;align-items:start;font-size:10px; }.question-list>div>span { display:grid;place-items:center;width:18px;height:18px;border-radius:50%;background:var(--ambre-doux);color:var(--ambre);font-weight:700; }.calibration-stats { display:grid;grid-template-columns:repeat(2,1fr);gap:1px;overflow:hidden;border:1px solid var(--filet);border-radius:9px;background:var(--filet); }.calibration-stats div { padding:11px;background:white; }.calibration-stats strong,.calibration-stats span { display:block; }.calibration-stats strong { font-size:18px; }.calibration-stats span { color:var(--doux);font-size:9.5px; }

.tabs { display: flex; gap: 2px; padding: 3px; border-radius: 7px; background: var(--accent); }
.tab { min-height: 26px; padding: 3px 9px; border: 0; border-radius: 5px; background: transparent; color: var(--doux); cursor: pointer; font-size: 11px; }
.tab.on { background: var(--carte); color: var(--texte); box-shadow: 0 1px 2px rgba(0,0,0,.08); }
.tab-panel[hidden] { display: none; }
.toast { position: fixed; right: 20px; bottom: 20px; z-index: 20; min-width: 260px; padding: 10px 12px; border: 1px solid var(--filet); border-radius: 8px; background: #18181b; color: white; box-shadow: 0 10px 30px rgba(0,0,0,.22); opacity: 0; transform: translateY(8px); pointer-events: none; transition: .16s ease; }
.toast.visible { opacity: 1; transform: none; }

@media (prefers-reduced-motion: reduce) { .toast { transition: none; } }

@media (max-width:1200px) {
  .brand-main { padding:16px 18px 42px; }
  .brand-topbar { flex-wrap:wrap; }
  .brand-actions { flex-wrap:wrap; }
  .studio-layout,.calibration-start-grid,.brand-management-grid,.calendar-toolbar { grid-template-columns:1fr; }
  .sticky-card,.learning-sidebar { position:static; }
  .calibration-cockpit,.calibration-intro { grid-template-columns:1fr; }
  .calibration-main { grid-template-columns:minmax(0,1fr) 270px; }
  .request-worklist { grid-template-columns:1fr; }
  .request-worklist>article { border-right:0; }
  .generated-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
}

@media (max-width:900px) {
  .brand-main { padding:14px 16px 36px; }
  .brand-actions .badge { display:none; }
  .version-strip { grid-template-columns:minmax(0,1fr) auto; }
  .version-strip .btn { display:none; }
  .calendar-metrics div { padding:11px 9px; }
  .calendar-item { grid-template-columns:42px 62px minmax(0,1fr); }
  .calendar-item form { grid-column:3; }
  .calibration-main { grid-template-columns:1fr; }
}

/* Multi-marque, collecte client et planning commercial */
.brand-switcher { position:relative; margin-bottom:12px; }
.brand-switcher>summary { list-style:none; }
.brand-switcher>summary::-webkit-details-marker { display:none; }
.brand-switcher-menu { position:absolute; z-index:30; top:calc(100% + 5px); left:0; width:100%; padding:7px; border:1px solid var(--filet); border-radius:8px; background:white; box-shadow:0 16px 38px rgba(0,0,0,.16); }
.brand-switcher-menu>small { display:block; padding:5px 7px; color:var(--doux); font-size:8px; font-weight:700; letter-spacing:.08em; }
.brand-switcher-menu form { margin:0; }
.brand-switch-option { display:grid; grid-template-columns:26px 1fr auto; align-items:center; gap:7px; width:100%; padding:6px; border:0; border-radius:6px; background:transparent; color:var(--texte); text-align:left; cursor:pointer; font:inherit; }
.brand-switch-option:hover,.brand-switch-option.active { background:var(--fond-2); }
.brand-switch-option .brand-avatar { width:25px; height:25px; }
.brand-switcher-menu>a { display:block; margin-top:5px; padding:8px; border-top:1px solid var(--filet); color:var(--bleu); font-size:10px; font-weight:650; }
.brand-management-grid { grid-template-columns:minmax(0,1.4fr) minmax(340px,.6fr); align-items:start; }
.brand-list-row { display:grid; grid-template-columns:34px minmax(0,1fr) auto; gap:10px; align-items:center; padding:11px 14px; border-bottom:1px solid var(--filet); }
.brand-list-row:last-child { border-bottom:0; }.brand-list-row b,.brand-list-row small { display:block; }.brand-list-row small { margin-top:2px; color:var(--doux); font-size:9.5px; }
.brand-fixed-scope { display:flex; align-items:center; gap:9px; margin:12px 0; padding:10px; border:1px solid var(--filet); border-radius:7px; background:var(--fond-2); }.brand-fixed-scope>span { display:grid; place-items:center; width:34px; height:34px; border-radius:6px; background:#18181b; color:#d9ff3f; font-weight:800; }.brand-fixed-scope b,.brand-fixed-scope small { display:block; }.brand-fixed-scope small { color:var(--doux); font-size:9px; }
.run-card>summary,.render-review>summary,.calendar-create>summary { list-style:none; cursor:pointer; }.run-card>summary::-webkit-details-marker,.render-review>summary::-webkit-details-marker,.calendar-create>summary::-webkit-details-marker { display:none; }.run-card:not([open])>summary { border-bottom:0; }.run-card>summary::after { content:'Ouvrir'; color:var(--doux); font-size:9px; }.run-card[open]>summary::after { content:'Réduire'; }
.client-request-queue { border-left:3px solid var(--ambre); }.request-worklist { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); }.request-worklist>article { padding:13px 14px; border-right:1px solid var(--filet); border-bottom:1px solid var(--filet); }.request-worklist>article:nth-child(2n) { border-right:0; }.request-worklist-head { display:flex; justify-content:space-between; gap:10px; }.request-worklist-head b,.request-worklist-head small { display:block; }.request-worklist-head small { margin-top:3px; color:var(--doux); font-size:9px; }.request-worklist>article>p { margin:8px 0; color:var(--doux); font-size:10px; }
.request-worklist:has(>article:only-child) { grid-template-columns:1fr; }.request-worklist>article:only-child { border-right:0; }
.request-file.request-file-review { display:block; }
.request-file-review .request-review { margin-top:9px; }
.request-file-review .request-review>summary { cursor:pointer; color:var(--bleu); font-weight:700; font-size:10px; }
.request-review-body { display:grid; gap:9px; padding-top:10px; }
.request-review-body>img,.request-review-body>video { display:block; width:100%; max-height:250px; object-fit:contain; background:var(--fond-2); }
.request-review-body>p { margin:0; font-size:10px; }
.request-rights-form { display:grid; gap:8px; }
.request-rights-form>label { display:grid; gap:3px; font-size:10px; font-weight:600; }
.request-rights-form .request-rights-confirm { display:flex; align-items:flex-start; gap:7px; font-weight:500; }
.request-rights-form .btn { justify-self:start; }
.request-send-form { display:grid; grid-template-columns:1fr 1.3fr; gap:6px; margin-top:9px; }.request-send-form .btn { grid-column:1/-1; }.request-responses { margin-top:9px; padding:8px; border-radius:6px; background:var(--fond-2); }.request-responses>b { font-size:9.5px; }.request-responses p { margin:5px 0 0; font-size:9.5px; }.request-responses p span { margin-right:6px; color:var(--bleu); }.request-file { display:flex; justify-content:space-between; gap:10px; align-items:center; margin-top:7px; padding:8px; border:1px solid var(--filet); border-radius:6px; }.request-file b,.request-file small { display:block; }.request-file small { color:var(--doux); font-size:9px; }
.calendar-toolbar { display:grid; grid-template-columns:minmax(0,1fr) 360px; gap:12px; align-items:start; margin-bottom:12px; }.calendar-metrics { display:grid; grid-template-columns:repeat(5,1fr); overflow:hidden; border:1px solid var(--filet); border-radius:8px; background:var(--filet); }.calendar-metrics div { padding:15px; background:white; }.calendar-metrics strong,.calendar-metrics span { display:block; }.calendar-metrics strong { font-size:22px; }.calendar-metrics span { color:var(--doux); font-size:9.5px; }.calendar-create>summary { display:flex; justify-content:space-between; padding:15px; }.calendar-create>summary span { color:var(--doux); font-size:9px; }.calendar-list { display:grid; grid-template-columns:90px minmax(0,1fr); }.calendar-day { grid-column:1; padding:13px; border-bottom:1px solid var(--filet); background:var(--fond-2); }.calendar-day time { font-size:10px; font-weight:700; }.calendar-item { grid-column:2; display:grid; grid-template-columns:52px 72px minmax(0,1fr) 130px; gap:10px; align-items:center; padding:11px 14px; border-bottom:1px solid var(--filet); }.calendar-item b,.calendar-item small { display:block; }.calendar-item small { margin-top:2px; color:var(--doux); font-size:9.5px; }.calendar-time { font-weight:700; }.calendar-format { color:var(--bleu); font-size:8.5px; font-weight:800; letter-spacing:.05em; }.mini-select { min-height:28px; padding:3px 6px; font-size:9.5px; }
.client-portal { min-height:100vh; background:#f4f4f1; }.client-portal-shell { width:min(760px,calc(100% - 32px)); margin:0 auto; padding:30px 0 50px; }.client-portal-brand { display:flex; align-items:center; gap:10px; margin-bottom:22px; }.client-portal-brand b,.client-portal-brand span { display:block; }.client-portal-brand span { color:var(--doux); font-size:10px; }.client-request-hero { margin-bottom:12px; padding:26px; border-radius:12px; background:#18181b; color:white; }.client-request-hero>span { color:#d9ff3f; font-size:9px; font-weight:800; letter-spacing:.08em; }.client-request-hero h1 { margin:9px 0 6px; font-size:27px; letter-spacing:-.035em; }.client-request-hero p { margin:0; color:#a1a1aa; }.client-instructions { padding:12px; border-left:3px solid var(--bleu); background:var(--fond-2); }.request-specs { margin:10px 0; }.request-specs summary { cursor:pointer; font-size:10px; color:var(--bleu); }.request-specs pre { max-height:200px; overflow:auto; padding:10px; background:#18181b; color:#e4e4e7; font-size:9px; }.portal-confirm { display:flex; align-items:flex-start; gap:8px; margin:12px 0; font-size:10px; }.portal-submit { width:100%; min-height:40px; }.portal-files { margin-top:18px; padding-top:14px; border-top:1px solid var(--filet); }.portal-files h3 { margin:0 0 8px; font-size:11px; }.portal-files>div { display:grid; grid-template-columns:20px 1fr auto; gap:8px; padding:7px 0; border-bottom:1px solid var(--filet); }.portal-files>div>span { color:var(--vert); }.portal-files small { color:var(--doux); }.client-portal footer { margin-top:14px; color:var(--doux); text-align:center; font-size:9px; }

/* Studio de production et publication : console desktop dense, dans le langage Chatcienne. */
.studio-layout { display:grid; grid-template-columns:360px minmax(0,1fr); gap:12px; align-items:start; }
.studio-layout>aside { position:sticky; top:12px; align-self:start; }
.sticky-card { position:static; }
.other-run-requests>summary { list-style:none; cursor:pointer; }.other-run-requests>summary::-webkit-details-marker { display:none; }.other-run-requests>summary:after { content:'Afficher'; color:var(--doux); font-size:10px; }.other-run-requests[open]>summary:after { content:'Masquer'; }
.request-shortcut-list>a { display:flex; justify-content:space-between; align-items:center; gap:12px; padding:11px 14px; border-top:1px solid var(--filet); color:inherit; text-decoration:none; }.request-shortcut-list>a:hover { background:var(--fond-2); }.request-shortcut-list strong,.request-shortcut-list small { display:block; }.request-shortcut-list small { margin-top:3px; color:var(--doux); font-size:10px; }
.studio-metrics { grid-template-columns:repeat(4,minmax(0,1fr)); margin:0; }
.choice-list { display:flex; flex-direction:column; gap:5px; max-height:122px; overflow:auto; padding:8px; border:1px solid var(--filet); border-radius:6px; background:var(--fond-2); font-size:11px; }
.choice-list label { display:flex; align-items:center; gap:6px; }
.field-hint { margin:0; color:var(--doux); font-size:11px; line-height:1.45; }
.brief-prompt { min-height:118px; font-size:13px; }
.deliverable-choices { display:grid; gap:6px; }
.deliverable-choices label { display:flex; align-items:flex-start; gap:9px; padding:9px 10px; border:1px solid var(--filet); border-radius:7px; background:var(--carte); cursor:pointer; }
.deliverable-choices label:has(input:checked) { border-color:#18181b; background:#f7f7f5; }
.deliverable-choices input { margin:2px 0 0; accent-color:#18181b; }
.deliverable-choices strong,.deliverable-choices small { display:block; }.deliverable-choices strong { font-size:11px; }.deliverable-choices small { margin-top:2px; color:var(--doux); font-size:10px; }
.optional-brief-details { margin-top:12px; padding:9px 10px; border:1px solid var(--filet); border-radius:7px; background:var(--fond-2); }
.optional-brief-details>summary { cursor:pointer; color:var(--bleu); font-size:11px; font-weight:650; }
.optional-brief-details[open]>summary { margin-bottom:9px; }
.pipeline { display:grid; grid-template-columns:repeat(7,minmax(74px,1fr)); gap:1px; padding:12px 14px; background:var(--filet); }
.pipeline-step { min-width:0; padding:9px 7px; background:var(--fond-2); }
.pipeline-step span { display:block; width:8px; height:8px; margin-bottom:5px; border-radius:50%; background:#a1a1aa; }
.pipeline-step.completed span { background:var(--vert); }.pipeline-step.failed span{background:var(--rouge)}
.pipeline-step b,.pipeline-step small { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.pipeline-step b { font-size:10px; font-weight:600; }.pipeline-step small{color:var(--doux);font-size:9px}
.run-card { overflow:hidden; border:1px solid var(--filet); border-radius:7px; background:var(--carte); }
.run-head { display:flex; align-items:center; gap:7px; padding:10px 12px; border-bottom:1px solid var(--filet); }
.run-head > div:first-child { min-width:0; margin-right:auto; }
.run-head > div:first-child > b { display:block; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.compact-form { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto; gap:8px; align-items:end; padding:10px 12px; border-top:1px solid var(--filet); background:var(--fond-2); }
.compact-form label span { display:block; margin-bottom:4px; color:var(--doux); font-size:9px; }
.compact-form input { width:100%; min-height:30px; padding:5px 7px; border:1px solid var(--filet); border-radius:5px; background:var(--carte); color:var(--texte); font:inherit; }
.run-detail { display:grid; grid-template-columns:minmax(0,1fr) 340px; gap:18px; padding:12px 14px; }
.run-detail h3 { margin:0 0 8px; font-size:11px; }.run-actions form{display:flex;gap:7px;justify-content:flex-end}.run-actions .input{max-width:160px}
.run-actions .gate-approval{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;width:100%;min-width:0;flex:1 1 100%}.run-actions .gate-approval form{display:grid;grid-template-columns:minmax(0,1fr);gap:7px;width:100%;justify-content:stretch}.run-actions .gate-reviewer-field{min-width:0}.run-actions .gate-reviewer-field label,.run-actions .gate-reviewer-field small{display:block}.run-actions .gate-reviewer-field label{margin-bottom:4px}.run-actions .gate-reviewer-field small{margin-top:4px}.run-actions .gate-reviewer-field .input{width:100%;max-width:none}
.generation-list{border-top:1px solid var(--filet)}.generation-head{padding:7px 14px;background:var(--fond-2);color:var(--doux);font-size:10px;font-weight:600}.generation-row{display:grid;grid-template-columns:minmax(0,1fr) auto 150px;align-items:center;gap:12px;padding:8px 14px;border-top:1px solid var(--filet)}.generation-row:first-of-type{border-top:0}.generation-row b,.generation-row span{display:block}.generation-row span{color:var(--doux);font-size:10px}.generation-row p{margin:3px 0 0;color:var(--rouge);font-size:10px}.generation-row p.generation-guidance{color:var(--doux)}.generation-row form{display:flex;justify-content:flex-end}.content-request-row{grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:10px 14px;padding:12px 14px}.content-request-row>div:first-child{min-width:0}.content-request-row>div:first-child b{overflow-wrap:anywhere}.content-request-row>div:last-child{grid-column:1/-1;width:100%;min-width:0}.content-request-row form{display:grid;grid-template-columns:minmax(190px,1.2fr) minmax(190px,1fr) auto;align-items:end;gap:10px;width:100%;min-width:0;justify-content:stretch}.content-request-row form .request-asset-field,.content-request-row form .request-reviewer-field{display:grid;gap:4px;min-width:0}.content-request-row form .request-asset-field>*,.content-request-row form .request-reviewer-field>*{min-width:0;max-width:100%}.content-request-row form .select,.content-request-row form .input{width:100%}.content-request-row form .btn{white-space:nowrap}
.decision-line,.config-check { display:flex; align-items:center; gap:9px; justify-content:space-between; padding:8px 0; border-bottom:1px solid var(--filet); }
.decision-line:last-child,.config-check:last-child{border-bottom:0}.config-check b{margin-right:auto}.config-check span:last-child{color:var(--doux);font-size:11px}
.qa-inline { display:flex; align-items:baseline; gap:7px; margin-bottom:7px; }.qa-inline strong{font-size:20px}.qa-inline span{color:var(--doux);font-size:11px}
.generated-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; padding:12px; background:var(--fond-2); }.generated-card{min-width:0;overflow:hidden;border:1px solid var(--filet);border-radius:8px;background:var(--carte)}
.generated-preview{width:100%;max-height:420px;aspect-ratio:2/3;background:var(--fond-2)}.generated-preview img,.generated-preview video{width:100%;height:100%;object-fit:contain}.generated-card form{display:flex;gap:6px}.generated-card form .input{min-width:0}
.revision-comparison{margin:10px 0;padding:9px;border:1px solid var(--filet);border-radius:8px;background:var(--fond-2)}.revision-comparison summary{cursor:pointer;font-weight:700}.revision-comparison-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:9px}.revision-comparison figure{min-width:0;margin:0;border:1px solid var(--filet);border-radius:6px;overflow:hidden;background:var(--carte)}.revision-comparison figure img{display:block;width:100%;height:180px;object-fit:contain;background:var(--fond-2)}.revision-comparison figcaption{display:grid;gap:4px;padding:7px;font-size:10px;overflow-wrap:anywhere}.revision-comparison figcaption span{color:var(--texte-doux)}
.generation-result{display:flex;align-items:center;gap:12px;padding:10px 14px;border-top:1px solid var(--filet);color:var(--texte);text-decoration:none}.generation-result:hover{background:var(--fond-2)}.generation-result img{display:block;width:48px;height:72px;object-fit:contain;background:var(--fond-2);border:1px solid var(--filet);border-radius:4px}.generation-result>span,.generation-result strong{display:block}.generation-result>span>span{margin-top:3px;color:var(--doux);font-size:10px}.generation-result:focus-visible{outline:2px solid var(--bleu);outline-offset:-2px}
.vision-qa{margin:9px 0;padding:8px;border:1px solid var(--filet);border-left:3px solid var(--ambre);border-radius:6px;background:var(--fond-2)}.vision-qa.passed{border-left-color:var(--vert)}
.vision-qa p{max-width:80ch;margin:4px 0;color:var(--doux);font-size:11px;line-height:1.4;white-space:normal;overflow:visible;overflow-wrap:anywhere;text-overflow:clip}.qa-summary{display:flex;align-items:center;justify-content:space-between}.qa-summary strong{font-size:18px}.qa-violation{padding:6px 0;border-top:1px solid var(--filet);font-size:10px}.qa-trace{margin-top:6px;color:var(--doux);font-size:9px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.qa-recommendation strong,.qa-strengths>b{color:var(--texte)}.qa-strengths{padding-top:6px;border-top:1px solid var(--filet);font-size:10px}.qa-strengths ul{margin:4px 0;padding-left:18px;color:var(--doux);font-size:11px;line-height:1.4}
.qa-action{margin-bottom:7px}.revision-action{display:grid!important;grid-template-columns:minmax(0,1fr);align-items:stretch;padding:10px;border:1px solid var(--filet);border-radius:var(--rayon);background:var(--fond-2)}.revision-action label{display:grid;gap:3px}.revision-action textarea{resize:vertical}.revision-action button{justify-self:start;max-width:100%}.revision-action .petit{white-space:normal}.approval-blocker{margin:6px 0 0;color:var(--rouge)!important;white-space:normal!important;font-size:10px!important}
.revision-references{grid-column:1/-1;min-width:0;margin:2px 0;padding:10px;border:1px solid var(--filet);border-radius:var(--rayon)}.revision-references legend{padding:0 5px;font-size:12px;font-weight:700}.revision-references>p{margin:0 0 8px}.revision-reference-list{display:flex;flex-wrap:wrap;gap:8px}.revision-reference{display:grid!important;grid-template-columns:52px 18px minmax(90px,1fr);align-items:center;gap:7px!important;max-width:260px;padding:6px;border:1px solid var(--filet);border-radius:8px;background:var(--fond)}.revision-reference img,.revision-reference-placeholder{width:52px;height:52px;object-fit:cover;border-radius:5px;background:var(--fond-2)}.revision-reference-placeholder{display:grid;place-items:center;font-size:10px}.revision-reference input{width:16px;height:16px}.revision-reference span{min-width:0}.revision-reference strong,.revision-reference small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.revision-reference small{margin-top:3px;color:var(--texte-doux);font-size:10px}.revision-action .revision-instruction-label{grid-column:1/-1;display:block}.revision-action .revision-instruction-label span{display:block;margin-top:3px}
.asset-approval-form{display:grid!important;grid-template-columns:minmax(0,1fr);gap:8px;padding:10px;border-top:1px solid var(--filet)}.asset-approval-form>.input{width:100%;max-width:none}.asset-approval-form .rights-confirmation{display:flex;align-items:flex-start;gap:8px;max-width:none;font-size:12px;line-height:1.45;color:var(--encre-2)}.asset-approval-form .rights-confirmation input{flex:0 0 auto;margin:2px 0 0}.asset-approval-form>.petit{margin:0;white-space:normal}.asset-approval-form button{justify-self:start;max-width:100%}
@media (max-width:720px) { .generated-grid { grid-template-columns:minmax(0,1fr); } }
.publication-grid{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.publication-compose,.publication-history{grid-column:1/-1}
.inline-form,.row-form{display:flex;gap:7px;align-items:center;margin-top:12px}.inline-form .input{max-width:280px}.row-form{margin:0}.row-form .input{width:120px}
.btn:disabled { cursor:not-allowed; opacity:.45; }
.qa-render{height:610px;background:var(--accent)}.qa-render img{width:100%;height:100%;object-fit:contain}.qa-live-score{display:flex;align-items:baseline;gap:4px;margin-bottom:10px}.qa-live-score strong{font-size:38px;line-height:1}.qa-live-score span{color:var(--doux)}.qa-dimensions{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;margin-bottom:10px;background:var(--filet)}.qa-dimensions div{display:flex;justify-content:space-between;padding:7px;background:var(--fond-2);font-size:10px}
.calibration-cockpit { display:grid;grid-template-columns:minmax(0,1.2fr) minmax(520px,.8fr);gap:34px;align-items:end;margin-bottom:12px;padding:22px 24px;border-radius:12px;background:#18181b;color:white; }
.calibration-cockpit-status { display:inline-flex;margin-bottom:8px;padding:3px 7px;border-radius:999px;background:#d9ff3f;color:#18181b;font-size:9.5px;font-weight:700; }
.calibration-cockpit h2 { max-width:720px;margin:0 0 6px;font-size:24px;line-height:1.15;letter-spacing:-.035em; }
.calibration-cockpit p { max-width:74ch;margin:0 0 13px;color:#a1a1aa; }
.calibration-cockpit .btn.primaire { border-color:#d9ff3f;background:#d9ff3f;color:#18181b; }
.calibration-cockpit-board { display:grid;grid-template-columns:repeat(3,1fr);gap:1px;overflow:hidden;border:1px solid #3f3f46;border-radius:9px;background:#3f3f46; }
.calibration-cockpit-board div { min-height:84px;padding:13px;background:#27272a; }
.calibration-cockpit-board strong,.calibration-cockpit-board span { display:block; }
.calibration-cockpit-board strong { font-size:19px;letter-spacing:-.03em; }
.calibration-cockpit-board span { margin-top:5px;color:#a1a1aa;font-size:9.5px; }

@media (max-width:1200px) {
  .brand-management-grid,.calendar-toolbar,.studio-layout,.calibration-start-grid { grid-template-columns:1fr; }
  .studio-layout>aside { position:static; }
  .calibration-cockpit,.calibration-intro { grid-template-columns:1fr; }
  .request-worklist { grid-template-columns:1fr; }
  .request-worklist>article { border-right:0; }
}

/* Workspace views: keep the existing ink and lime language, with clearer hierarchy. */
[hidden] { display:none!important; }
.brand-app { grid-template-columns:230px minmax(0,1fr); }
.brand-rail { overflow:hidden; }
.brand-nav { min-height:0; overflow-y:auto; padding-right:3px; scrollbar-width:thin; }
.brand-nav a { min-height:36px; font-size:12.5px; }
.brand-nav-group { color:#52525b; font-size:10.5px; font-weight:700; letter-spacing:.04em; text-transform:uppercase; }
.brand-title { font-size:22px; }
.card-head h2,.card-head h3 { font-size:14px; }
.card-head p,.brand-subtitle { font-size:12px; }
.btn { min-height:34px; }
.btn.mini { min-height:30px; }
.eyebrow { display:block; margin-bottom:5px; color:var(--doux); font-size:10px; font-weight:750; letter-spacing:.08em; text-transform:uppercase; }
summary:focus-visible, button:focus-visible, label:has(input:focus-visible) { outline:2px solid var(--bleu); outline-offset:2px; }
.agency-summary,.library-intro { display:flex; align-items:center; justify-content:space-between; gap:20px; margin-bottom:13px; padding:22px 24px; border-radius:12px; background:#18181b; color:#fff; }
.agency-summary h2,.library-intro h2 { margin:0 0 5px; font-size:25px; line-height:1.15; letter-spacing:-.03em; }
.agency-summary p,.library-intro p { max-width:64ch; margin:0; color:#d4d4d8; font-size:12px; }
.agency-summary .eyebrow,.library-intro .eyebrow { color:#d9ff3f; }
.agency-attention { min-width:110px; padding:10px 16px; border:1px solid #52525b; border-radius:9px; text-align:center; }
.agency-attention strong,.agency-attention span { display:block; }.agency-attention strong { font-size:30px; }.agency-attention span { color:#d4d4d8; font-size:11px; }
.agency-row { display:grid; grid-template-columns:minmax(160px,1.2fr) minmax(230px,2fr) 120px auto; align-items:center; gap:14px; padding:14px; border-top:1px solid var(--filet); }
.agency-row:first-child { border-top:0; }.agency-identity { display:flex; align-items:center; gap:9px; min-width:0; }.agency-identity strong,.agency-identity small,.agency-date small,.agency-date b { display:block; }.agency-identity strong { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.agency-identity small,.agency-date small { color:var(--doux); font-size:11px; }.agency-signals { display:flex; flex-wrap:wrap; gap:5px; }.agency-date b { font-size:12px; }
.calibration-sources { margin-bottom:10px; }.calibration-source-list { display:flex; gap:8px; overflow-x:auto; padding:10px 14px; }.calibration-source-list figure { flex:none; width:95px; margin:0; }.calibration-source-list img { display:block; width:95px; height:75px; object-fit:cover; border-radius:5px; }.calibration-source-list figcaption { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; margin-top:3px; color:var(--doux); font-size:10px; }
.run-history { overflow:hidden; }.run-history-list { max-height:230px; overflow:auto; }.run-history-list a { display:grid; grid-template-columns:minmax(0,1fr) 74px auto; gap:8px; align-items:center; padding:8px 14px; border-top:1px solid var(--filet); }.run-history-list a:hover,.run-history-list a.selected { background:#f4f4f5; }.run-history-list a.selected { border-left:3px solid #18181b; }.run-history-list a>span:first-child { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }.run-history-list small { color:var(--doux); }
.library-intro { align-items:flex-start; }.library-add { min-width:190px; max-width:650px; color:var(--texte); }.library-add>summary { padding:10px 13px; cursor:pointer; background:#d9ff3f; border-radius:9px; font-weight:700; }.library-add[open] { position:relative; }.library-add[open] .card-body { position:absolute; top:100%; right:0; z-index:3; width:min(780px,72vw); border:1px solid var(--filet); border-radius:9px; background:#fff; box-shadow:0 18px 40px #0002; }
.library-controls { display:grid; grid-template-columns:minmax(200px,1fr) 180px 180px auto; align-items:end; gap:10px; margin-bottom:12px; }.library-controls .field { margin:0; }.library-result-count { padding-bottom:8px; color:var(--doux); white-space:nowrap; font-size:12px; }.library-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }.library-grid .asset-card details { margin-top:8px; }.library-grid .asset-card details p { overflow-wrap:anywhere; }.library-grid .asset-info p { overflow-wrap:anywhere; }
.competitor-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:12px; }.competitor-card { overflow:hidden; }.competitor-card .card-head a,.competitor-observation a { color:var(--bleu); text-decoration:underline; }.competitor-card .card-body>small { color:var(--doux); }.competitor-observe { margin:13px 0; border:1px solid var(--filet); border-radius:7px; }.competitor-observe>summary { padding:9px 10px; cursor:pointer; font-weight:650; }.competitor-observe form { padding:11px; border-top:1px solid var(--filet); }.competitor-observe form .field { margin-bottom:9px; }.competitor-observation { padding:10px 0; border-top:1px solid var(--filet); }.competitor-observation>div { display:flex; align-items:center; justify-content:space-between; gap:8px; }.competitor-observation small { display:block; color:var(--doux); margin:3px 0; }.competitor-observation p { margin:4px 0; }
@media(max-width:1200px) { .agency-row { grid-template-columns:minmax(150px,1fr) minmax(180px,1.2fr) auto; }.agency-date { display:none; }.library-grid { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:940px) { .agency-row { grid-template-columns:1fr auto; }.agency-signals { grid-column:1/-1; grid-row:2; }.library-controls { grid-template-columns:1fr 1fr; }.library-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.competitor-grid { grid-template-columns:1fr; } }
.journey-card { margin-bottom:12px; overflow:hidden; }.journey-readiness { display:flex; flex-wrap:wrap; gap:5px; }.journey-list { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:1px; margin:0; padding:0; list-style:none; background:var(--filet); }.journey-list li { display:flex; flex-direction:column; align-items:flex-start; min-height:150px; gap:8px; padding:13px; background:#fff; }.journey-list li.done { background:#fcfdfb; }.journey-marker { display:grid; place-items:center; width:24px; height:24px; border-radius:50%; background:#18181b; color:#d9ff3f; font-weight:800; }.journey-list li.done .journey-marker { background:var(--vert-doux); color:var(--vert); }.journey-list strong { font-size:12px; }.journey-list p { margin:3px 0 0; color:var(--doux); font-size:11px; }.journey-list .btn { margin-top:auto; }
@media(max-width:1200px) { .journey-list { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media(max-width:940px) { .journey-list { grid-template-columns:repeat(2,minmax(0,1fr)); } }
.calendar-view-nav { display:flex; align-items:center; gap:6px; margin:0 0 10px; }.calendar-view-nav>span { margin-left:auto; font-weight:700; }.calendar-month { overflow:hidden; margin-bottom:12px; }.calendar-weekdays,.calendar-cells { display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); }.calendar-weekdays { border-bottom:1px solid var(--filet); background:var(--fond-2); }.calendar-weekdays span { padding:8px; color:var(--doux); font-size:11px; font-weight:700; }.calendar-cell { min-height:100px; padding:7px; border-right:1px solid var(--filet); border-bottom:1px solid var(--filet); }.calendar-cell:nth-child(7n) { border-right:0; }.calendar-cell.outside { background:var(--fond-2); color:var(--doux); }.calendar-cell time { display:block; margin-bottom:5px; font-weight:700; }.calendar-event { display:block; overflow:hidden; padding:4px 5px; margin:3px 0; border-left:2px solid var(--bleu); border-radius:3px; background:#eff6ff; color:#1e3a8a; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }.calendar-event small { display:block; color:#475569; }.calendar-event:focus-visible { white-space:normal; }.calendar-reschedule { margin-top:5px; }.calendar-reschedule summary { color:var(--bleu); cursor:pointer; font-size:11px; }.calendar-reschedule form { display:flex; align-items:end; flex-wrap:wrap; gap:5px; margin-top:7px; }.calendar-reschedule label { width:100%; font-size:10px; }.calendar-reschedule .input { width:180px; }.sr-only { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.results-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; margin-top:12px; }.result-metrics { display:grid; grid-template-columns:repeat(4,1fr); gap:1px; border:1px solid var(--filet); border-radius:7px; overflow:hidden; background:var(--filet); }.result-metrics div { padding:10px; background:var(--fond-2); }.result-metrics strong,.result-metrics span { display:block; }.result-metrics strong { font-size:18px; }.result-metrics span { color:var(--doux); font-size:10px; }.result-card .card-body>p { margin:11px 0; }
.team-layout { display:grid; grid-template-columns:minmax(0,1.5fr) minmax(340px,1fr); gap:12px; align-items:start; }.team-list { max-height:650px; overflow:auto; }.team-row { display:grid; grid-template-columns:minmax(0,1fr) 165px auto; gap:10px; align-items:center; padding:12px 14px; border-top:1px solid var(--filet); }.team-row:first-child { border-top:0; }.team-row small { display:block; margin-top:3px; color:var(--doux); font-size:10px; }.team-brand-choice { display:grid; gap:6px; margin:10px 0 14px; padding:10px; border:1px solid var(--filet); border-radius:7px; }.team-brand-choice legend { font-weight:700; }.team-brand-choice label { cursor:pointer; }.team-brand-choice small { color:var(--doux); }.team-pending { margin-top:12px; }.team-pending .team-row { grid-template-columns:1fr 1fr auto; }
.invite-page { min-width:320px; background:#f6f6f3; }.invite-page main { width:min(470px,calc(100% - 32px)); margin:8vh auto; }.invite-page .brand-signature { margin-bottom:18px; }.invite-page h1 { margin:0 0 5px; font-size:24px; }
@media(max-width:1120px) { .results-grid,.team-layout { grid-template-columns:1fr; } }
.result-summary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:16px 0}.result-summary article{display:flex;flex-direction:column;gap:6px}.result-summary article strong{font-size:28px;line-height:1.1;font-weight:700}.result-summary article .petit{margin-top:4px;color:var(--vert)}@media(max-width:900px){.result-summary{grid-template-columns:1fr}}

/* Brand learning: source first, then a guided conversation. */
.learn-shell { max-width: 1040px; margin: 0 auto; padding: 4px 2px 48px; }
.learn-heading { padding: 14px 0 18px; }
.learn-heading h2 { margin: 2px 0 5px; font-size: 28px; letter-spacing: -.045em; line-height: 1.2; }
.learn-heading p { margin: 0; color: var(--doux); font-size: 13px; }
.learn-eyebrow { color: #71717a; font-size: 10px; font-weight: 750; letter-spacing: .12em; }
.learn-modes { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; margin-bottom: 28px; }
.learn-mode { display: flex; align-items: center; gap: 13px; min-height: 82px; padding: 15px 18px; border: 1px solid var(--filet); border-radius: 10px; background: #fff; transition: border-color .15s, background .15s; }
.learn-mode:hover { border-color: #a1a1aa; }
.learn-mode.active { border: 2px solid #18181b; padding: 14px 17px; background: #fafafa; }
.learn-mode-icon { display: grid; place-items: center; flex: none; width: 38px; height: 38px; border-radius: 8px; background: #f4f4f5; font-size: 19px; }
.learn-mode.active .learn-mode-icon { background: #d9ff3f; }
.learn-mode b,.learn-mode small { display: block; }
.learn-mode b { font-size: 14px; }
.learn-mode small { color: var(--doux); font-size: 11px; margin-top: 2px; }
.learn-mode-arrow { margin-left: auto; color: #a1a1aa; font-size: 19px; }
.learn-intro { display: flex; align-items: flex-start; gap: 14px; margin: 0 0 15px; }
.learn-index { display: inline-grid; place-items: center; flex: none; min-width: 27px; height: 27px; border-radius: 6px; background: #18181b; color: #d9ff3f; font: 700 11px ui-monospace,monospace; }
.learn-intro h3,.learn-section-head h3,.learn-next h3,.learn-results h3 { margin: 2px 0 4px; font-size: 16px; letter-spacing: -.02em; }
.learn-intro p,.learn-next p { max-width: 68ch; margin: 0; color: var(--doux); }
.learn-intake { display: grid; grid-template-columns: minmax(0,1.35fr) minmax(275px,.85fr); gap: 12px; }
.learn-url-form,.learn-upload-form { min-width: 0; border: 1px solid var(--filet); border-radius: 9px; padding: 17px; background: #fff; }
.learn-url-form label { display: block; font-weight: 700; margin-bottom: 8px; }
.learn-url-form textarea,.learn-composer textarea,.learn-approval input { width: 100%; border: 1px solid #d4d4d8; border-radius: 7px; background: #fff; padding: 11px 12px; color: var(--texte); line-height: 1.5; resize: vertical; }
.learn-url-form textarea { min-height: 145px; }
.learn-url-form textarea:focus,.learn-composer textarea:focus { outline: 2px solid #18181b; outline-offset: 1px; }
.learn-form-foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 10px; }
.learn-form-foot span { color: var(--doux); font-size: 11px; }
.learn-upload-form { display: flex; flex-direction: column; align-items: stretch; gap: 11px; }
.learn-upload-form label { display: flex; flex-direction: column; align-items: flex-start; gap: 7px; }
.learn-upload-icon { display: grid; place-items: center; width: 31px; height: 31px; border: 1px solid #d4d4d8; border-radius: 7px; font-size: 21px; line-height: 1; }
.learn-upload-form b { font-size: 13px; }
.learn-upload-form small { color: var(--doux); font-size: 11px; }
.learn-upload-form em { color: #a1a1aa; font-size: 10px; font-style: normal; }
.learn-upload-form input { max-width: 100%; font-size: 11px; }
.learn-upload-form .btn { align-self: flex-start; margin-top: auto; }
.learn-evidence { margin: 20px 0 28px; border-top: 1px solid var(--filet); padding-top: 17px; }
.learn-section-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 12px; }
.learn-section-head>div { display: flex; align-items: center; gap: 10px; }
.learn-section-head>span { color: var(--doux); font-size: 11px; }
.learn-evidence-list { border: 1px solid var(--filet); border-radius: 8px; overflow: visible; }
.learn-evidence-item { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; padding: 10px 12px; border-bottom: 1px solid var(--filet); scroll-margin-top: 24px; }
.learn-evidence-item:target { outline: 2px solid var(--vert); outline-offset: 2px; border-radius: 7px; background: #f0fdf4; }
.learn-evidence-item:last-child { border-bottom: 0; }
.learn-evidence-item>div { min-width: 0; flex: 1; }
.learn-evidence-item b,.learn-evidence-item small { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.learn-evidence-item b { font-size: 12px; }
.learn-evidence-item small { color: var(--doux); font-size: 10px; }
.learn-evidence-item .learn-source-error { margin-top: 3px; color: #a16207; white-space: normal; overflow: visible; }
.learn-evidence-item .learn-source-excerpt { margin-top: 4px; color: #52525b; white-space: normal; overflow: visible; }
.learn-evidence-kind { min-width: 64px; color: #71717a; font-size: 9px; font-weight: 700; letter-spacing: .06em; }
.learn-status { flex: none; border-radius: 4px; padding: 4px 6px; font-size: 10px; font-weight: 650; }
.learn-status.good { background: #ecfdf5; color: #047857; }
.learn-status.warning { background: #fff7ed; color: #9a3412; }
.learn-status.muted { background: #f4f4f5; color: #71717a; }
.learn-remove { border: 1px solid #fecaca; border-radius: 6px; padding: 6px 8px; background: white; color: #b91c1c; font: inherit; font-size: 11px; line-height: 1.2; white-space: nowrap; cursor: pointer; }
.learn-remove:hover { background: #fef2f2; }
.learn-remove:focus-visible { outline: 2px solid #b91c1c; outline-offset: 2px; }
.learn-source-edit { position: relative; flex: none; }
.learn-source-edit>summary { color: #52525b; cursor: pointer; font-size: 11px; text-decoration: underline; text-underline-offset: 2px; white-space: nowrap; }
.learn-source-edit[open] { flex: 1 1 100%; min-width: 0; }
.learn-source-edit[open] + form { margin-left: auto; }
.learn-source-edit form { position: static; z-index: auto; display: grid; grid-template-columns: minmax(0,1fr) auto; align-items: center; gap: 7px; width: 100%; padding: 10px; border: 1px solid var(--filet); border-radius: 8px; background: white; box-shadow: 0 4px 16px #18181b1a; }
.learn-source-edit form label { grid-column: 1/-1; color: #52525b; font-size: 10px; }
.learn-source-edit input[type="url"],.learn-source-edit textarea { grid-column: 1/-1; min-width: 0; width: 100%; padding: 8px; border: 1px solid var(--filet); border-radius: 5px; font: inherit; font-size: 11px; }
.learn-source-edit textarea { resize: vertical; line-height: 1.45; }
.learn-source-edit .learn-submit-status { position: static; grid-column: 1/-1; width: auto; padding: 7px 9px; border-radius: 6px; background: #fafafa; }
.learn-empty { color: var(--doux); margin: 0 0 10px; }
.learn-chat { border: 1px solid var(--filet); border-radius: 10px; margin: 22px 0; padding: 17px; background: #fafafa; scroll-margin-top: 20px; }
.learn-ai-tag { color: #52525b !important; background: #e9e9eb; border-radius: 20px; padding: 5px 9px; white-space: nowrap; }
.learn-chat-stream { display: flex; flex-direction: column; gap: 10px; max-height: 540px; overflow-y: auto; padding: 8px 2px 16px; }
.learn-chat-history { align-self: stretch; border: 1px solid var(--filet); border-radius: 8px; background: #f4f4f5; }
.learn-chat-history>summary { padding: 9px 12px; color: #52525b; cursor: pointer; font-size: 12px; }
.learn-chat-history-list { display: flex; flex-direction: column; gap: 10px; border-top: 1px solid var(--filet); padding: 12px; }
.learn-message { max-width: 81%; padding: 11px 13px; border: 1px solid var(--filet); border-radius: 10px 10px 10px 2px; background: #fff; }
.learn-message.user { align-self: flex-end; border-color: #18181b; border-radius: 10px 10px 2px 10px; background: #18181b; color: #fff; }
.learn-speaker { display: block; margin-bottom: 5px; color: #71717a; font-size: 10px; font-weight: 700; }
.learn-message.user .learn-speaker { color: #d4d4d8; }
.learn-message p { margin: 0; white-space: normal; }
.learn-citation { display: inline; color: #4338ca; font-weight: 650; text-decoration: underline; text-decoration-thickness: 1px; text-underline-offset: 2px; }
.learn-citation:hover,.learn-citation:focus-visible { color: #312e81; text-decoration-thickness: 2px; }
.learn-message.user .learn-citation { color: #d9ff3f; }
.learn-message.user .learn-citation:hover,.learn-message.user .learn-citation:focus-visible { color: #fff; }
.learn-composer { display: flex; align-items: flex-end; gap: 9px; border-top: 1px solid var(--filet); padding-top: 14px; }
.learn-composer textarea { min-height: 58px; max-height: 240px; flex: 1; overflow-y: hidden; }
.learn-composer .btn { flex: none; min-height: 42px; }
.learn-next { display: flex; align-items: center; justify-content: space-between; gap: 20px; border: 1px solid #27272a; border-radius: 10px; background: #18181b; color: white; padding: 20px; }
.learn-next>div { max-width: 620px; }
.learn-next .learn-index { background: #d9ff3f; color: #18181b; margin-bottom: 9px; }
.learn-next p { color: #a1a1aa; }
.learn-next .btn.primaire { white-space: nowrap; background: #d9ff3f; color: #18181b; border-color: #d9ff3f; }
.learn-next-hint { color: #a1a1aa; font-size: 11px; white-space: nowrap; }
.learn-next.is-guidance { border-color: #d4d4d8; background: #fff; color: #18181b; }
.learn-next.is-guidance .learn-index { background: #f4f4f5; color: #18181b; }
.learn-next.is-guidance p { color: #52525b; }
.learn-next.is-guidance .learn-next-hint { color: #3f3f46; font-size: 13px; white-space: normal; }
.learn-next-actions { display: flex; flex-wrap: wrap; gap: 8px 16px; margin-top: 12px; }
.learn-next-actions a { color: #18181b; font-size: 12px; font-weight: 650; text-decoration: underline; text-underline-offset: 3px; }
.learn-revision { display: flex; align-items: flex-start; gap: 13px; border: 1px solid #fcd34d; border-radius: 10px; background: #fffbeb; padding: 15px 17px; }
.learn-revision>.learn-index { flex: none; display: inline-grid; place-items: center; width: 22px; height: 22px; border-radius: 50%; background: #fef3c7; color: #92400e; font-weight: 750; }
.learn-revision h3 { margin: 1px 0 4px; font-size: 14px; }
.learn-revision p { max-width: 78ch; margin: 0; color: #52525b; font-size: 13px; }
.learn-revision .learn-next-actions { gap: 7px 14px; }
.learn-manual-progress { margin-top: 14px; }
.learn-manual-progress> b { display: block; margin-bottom: 7px; font-size: 12px; }
.learn-manual-progress ul { display: flex; flex-wrap: wrap; gap: 6px; margin: 0 0 8px; padding: 0; list-style: none; }
.learn-manual-progress li { display: inline-flex; align-items: center; gap: 7px; border: 1px solid #e4e4e7; border-radius: 999px; background: #fafafa; padding: 5px 9px; font-size: 12px; }
.learn-manual-progress li.is-received { border-color: #bbf7d0; background: #f0fdf4; }
.learn-manual-progress li small { color: #71717a; font-size: 10px; }
.learn-manual-progress li.is-received small { color: #166534; }
.learn-manual-progress>small { display: block; color: #52525b; font-size: 11px; }
.learn-results { margin-top: 28px; }
.learn-run,.learn-instagram { margin-top: 9px; border: 1px solid var(--filet); border-radius: 8px; padding: 12px 14px; }
.learn-run>summary,.learn-instagram>summary { display: flex; align-items: center; justify-content: space-between; gap: 12px; cursor: pointer; }
.learn-run>summary small { display: block; color: var(--doux); }
.learn-run-body { padding-top: 14px; }
.learn-run-body h4 { margin: 12px 0 2px; }
.learn-critic { margin-top: 16px; padding: 14px 16px; border-radius: 8px; background: #ecfdf5; color: #065f46; line-height: 1.5; }
.learn-critic.needs-revision { background: #fff7ed; color: #7c2d12; }
.learn-critic.has-notes { background: #fffbeb; color: #854d0e; }
.learn-critic p { margin: 6px 0 0; }
.learn-critic ul { margin: 10px 0 0; padding-left: 20px; }
.learn-critic li + li { margin-top: 8px; }
.learn-approval { display: grid; gap: 9px; margin-top: 14px; }
.learn-approval label { display: grid; gap: 4px; }
.learn-approval .btn { justify-self: start; }
.learn-instagram { margin-top: 22px; color: #52525b; }
.learn-instagram summary span { color: var(--doux); font-size: 11px; }
.learn-instagram>div { padding-top: 13px; }
.learn-feedback-stack { display: grid; gap: 8px; margin: 16px 0 10px; scroll-margin-top: 20px; }
.learn-feedback { display: flex; align-items: flex-start; gap: 10px; padding: 12px 14px; border: 1px solid #a7e1c4; border-radius: 8px; background: #f0fdf4; color: #14532d; }
.learn-feedback.error { border-color: #fecaca; background: #fef2f2; color: #991b1b; }
.learn-feedback.warning { border-color: #fcd34d; background: #fffbeb; color: #854d0e; }
.learn-feedback-icon { display: grid; place-items: center; flex: none; width: 20px; height: 20px; border-radius: 50%; background: #16a34a; color: white; font-size: 12px; font-weight: 800; }
.learn-feedback.error .learn-feedback-icon { background: #dc2626; }
.learn-feedback.warning .learn-feedback-icon { background: #d97706; }
.creative-proposal { display:grid;gap:12px;margin:14px 18px;padding:18px;border:1px solid var(--filet);border-left:4px solid var(--vert);border-radius:9px;background:#fff; }
.creative-proposal-head { display:flex;align-items:flex-start;justify-content:space-between;gap:12px; }
.creative-proposal-head h3 { margin:3px 0 0;font-size:18px;line-height:1.25; }
.creative-proposal .eyebrow { color:var(--vert);font-size:10px;font-weight:750;text-transform:uppercase;letter-spacing:.08em; }
.creative-narrative,.creative-direction p,.creative-copy p { margin:4px 0 0;color:var(--doux);font-size:12px;line-height:1.55; }
.creative-direction,.creative-copy { padding:11px 12px;border:1px solid var(--filet);border-radius:7px;background:var(--fond-2);font-size:11px; }
.creative-shots ol { display:grid;gap:8px;margin:8px 0 0;padding-left:22px; }
.creative-shots li { padding-left:3px;font-size:12px;line-height:1.45; }
.creative-shots li small { display:block;margin-top:2px;color:var(--doux);font-size:10px; }
.creative-strengths { margin:0;color:#047857;font-size:10px;line-height:1.5; }
.request-source-detail { margin-top:5px;color:var(--doux);font-size:10px; }
.request-source-detail summary { cursor:pointer;font-weight:650; }
.request-source-detail p { margin:4px 0;line-height:1.45; }
.learn-feedback b { display: block; font-size: 12px; }
.learn-feedback p { margin: 2px 0 0; font-size: 11px; line-height: 1.5; }
.learn-progress { display: flex; align-items: flex-start; gap: 12px; margin: 17px 0 20px; padding: 15px 17px; border: 1px solid #bfd0f4; border-radius: 10px; background: #f3f7ff; color: #172554; }
.learn-progress>.learn-spinner { margin-top: 2px; border-color: #bfdbfe; border-top-color: #1d4ed8; }
.learn-progress>div { flex: 1; min-width: 0; }
.learn-progress b { display: block; font-size: 13px; }
.learn-progress p { margin: 3px 0 9px; color: #334155; font-size: 11px; line-height: 1.5; }
.learn-progress progress { display: block; width: min(100%,420px); height: 7px; margin-bottom: 7px; accent-color: #2563eb; }
.learn-progress small { display: block; color: #475569; font-size: 10px; line-height: 1.4; }
.learn-progress form { align-self: center; }
.learn-next .btn:disabled { opacity: .65; cursor: not-allowed; }
.learn-submit-status { display: flex; align-items: center; gap: 8px; margin-top: 10px; color: #52525b; font-size: 11px; line-height: 1.4; }
.learn-submit-status[hidden] { display: none; }
.learn-spinner { width: 15px; height: 15px; flex: none; border: 2px solid #d4d4d8; border-top-color: #18181b; border-radius: 50%; animation: learn-spin .8s linear infinite; }
.learn-composer { flex-wrap: wrap; }
.learn-composer .learn-submit-status { flex-basis: 100%; }
.learn-next form .learn-submit-status { max-width: 250px; color: #d4d4d8; }
.learn-next .learn-spinner { border-color: #52525b; border-top-color: #d9ff3f; }
.is-submitting textarea,.is-submitting input[type="file"] { opacity: .65; pointer-events: none; }
@keyframes learn-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .learn-spinner { animation: none; border-top-color: #18181b; } }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
@media (max-width: 1100px) { .learn-intake { grid-template-columns: 1fr; } .learn-next { align-items: flex-start; flex-direction: column; } }
.learn-review-chat-link { display: inline-flex; align-items: center; gap: 5px; margin-top: 12px; color: #312e81; font-size: 12px; font-weight: 700; text-decoration: underline; text-underline-offset: 3px; }
.learn-review-chat-link:hover,.learn-review-chat-link:focus-visible { color: #1e1b4b; text-decoration-thickness: 2px; }
@media (max-width: 760px) {
  html,body { min-width: 0; }
  .brand-app { grid-template-columns: minmax(0,1fr); }
  .brand-rail { position: static; height: auto; min-width: 0; padding: 9px 12px 5px; border-right: 0; border-bottom: 1px solid var(--filet); gap: 8px; }
  .brand-signature { height: 24px; }
  .brand-env,.brand-rail-bottom { display: none; }
  .brand-switcher { margin-bottom: 0; }
  .brand-nav { flex-direction: row; flex-wrap: nowrap; gap: 4px; overflow-x: auto; overscroll-behavior-x: contain; padding: 0 0 5px; scrollbar-width: thin; }
  .brand-nav-group { display: none; }
  .brand-nav a { flex: 0 0 auto; min-height: 36px; padding: 7px 9px; white-space: nowrap; }
  .brand-nav a span:not(.brand-nav-count) { font-size: 11px; }
  .brand-main { padding: 12px 12px 32px; }
  .brand-topbar { flex-direction: column; gap: 8px; }
  .brand-actions { align-self: stretch; }
  .version-strip { grid-template-columns: minmax(0,1fr); gap: 6px; padding: 9px 10px; }
  .learn-shell { padding-right: 0; padding-left: 0; }
  .learn-heading h2 { font-size: 24px; }
  .learn-modes { grid-template-columns: minmax(0,1fr); gap: 7px; margin-bottom: 20px; }
  .learn-mode { min-height: 68px; padding: 11px 12px; }
  .learn-mode.active { padding: 10px 11px; }
  .learn-intake { grid-template-columns: minmax(0,1fr); }
  .learn-url-form,.learn-upload-form { padding: 13px; }
  .learn-form-foot { align-items: flex-start; flex-direction: column; }
  .learn-form-foot .btn { width: 100%; min-height: 40px; }
  .learn-section-head { align-items: flex-start; flex-wrap: wrap; }
  .learn-evidence-item { gap: 8px; padding: 10px; }
  .learn-evidence-kind { min-width: 54px; }
  .learn-evidence-item .learn-source-edit[open] { flex-basis: 100%; }
  .learn-chat { padding: 12px; }
  .learn-message { max-width: 96%; }
  .learn-composer { align-items: stretch; }
  .learn-composer textarea { flex: 1 1 100%; width: 100%; }
  .learn-composer .btn { min-height: 40px; }
  .learn-next { padding: 15px; }
  .learn-run,.learn-instagram { padding: 10px; }
  .content-request-row form { grid-template-columns:minmax(0,1fr); }
  .content-request-row form .btn { justify-self:stretch; }
}

/* La lecture commence par le titre, l'état et l'action. Les explications s'ouvrent à la demande. */
.brand-breadcrumb { font-weight: 600; }
.brand-title { margin-bottom: 0; font-size: 24px; font-weight: 700; letter-spacing: -.025em; }
.brand-topbar { align-items: center; padding-bottom: 14px; border-bottom: 1px solid var(--filet); }
.brand-actions .badge:last-of-type { display: none; }
.inline-help { position: relative; display: inline-block; margin-top: 6px; }
.inline-help > summary { display: grid; place-items: center; width: 17px; height: 17px; border: 1px solid #a1a1aa; border-radius: 50%; color: #52525b; background: white; font: 700 11px/1 ui-sans-serif, sans-serif; cursor: pointer; list-style: none; }
.inline-help > summary::-webkit-details-marker { display: none; }
.inline-help > summary:hover,.inline-help[open] > summary { border-color: var(--texte); color: var(--texte); background: var(--accent); }
.inline-help > summary:focus-visible { outline: 2px solid var(--bleu); outline-offset: 2px; }
.inline-help-panel { position: absolute; z-index: 25; top: calc(100% + 5px); left: 0; width: max-content; max-width: min(300px, 72vw); padding: 10px 12px; border: 1px solid var(--filet); border-radius: 7px; background: white; box-shadow: 0 10px 26px rgba(24,24,27,.12); color: var(--texte); font-size: 11px; line-height: 1.45; font-weight: 400; }
.inline-help-panel p { margin: 0; color: inherit; font-size: inherit; }
.section-help { margin-top: 5px; }
.brand-nav-more { margin-top: 6px; border-top: 1px solid var(--filet); padding-top: 6px; }
.brand-nav-more > summary { display: flex; align-items: center; justify-content: space-between; min-height: 31px; padding: 6px 8px; border-radius: 6px; color: var(--doux); font-weight: 600; cursor: pointer; list-style: none; }
.brand-nav-more > summary::-webkit-details-marker { display: none; }
.brand-nav-more > summary:hover,.brand-nav-more[open] > summary { background: var(--accent); color: var(--texte); }
.brand-nav-more > summary:focus-visible { outline: 2px solid var(--bleu); outline-offset: 2px; }
.brand-nav-more > summary span { font-size: 16px; line-height: 1; }
.brand-nav-more[open] > summary span { transform: rotate(180deg); }
.brand-nav-more > a { margin-left: 9px; }
.brand-nav { min-height: 0; overflow-y: auto; }
.agency-priority { display: flex; align-items: center; gap: 12px; margin-bottom: 12px; padding: 10px 13px; border-left: 3px solid var(--ambre); background: var(--ambre-doux); }
.agency-priority span { color: var(--doux); font-size: 11px; }
.agency-row > form { grid-column: 4; justify-self: end; }
@media (max-width: 1200px) { .agency-row > form { grid-column: 3; } }
@media (max-width: 940px) { .agency-row > form { grid-column: 2; grid-row: 1; } }
.cockpit-next { display: flex; align-items: center; justify-content: space-between; gap: 24px; margin-bottom: 12px; padding: 22px 24px; border-radius: 10px; background: #18181b; color: white; }
.cockpit-next-label { display: block; margin-bottom: 7px; color: #d9ff3f; font-size: 10px; font-weight: 700; }
.cockpit-next h2 { margin: 0 0 5px; font-size: 24px; line-height: 1.2; letter-spacing: -.025em; }
.cockpit-next p { max-width: 64ch; margin: 0; color: #d4d4d8; }
.cockpit-next .btn.primaire { flex: none; border-color: #d9ff3f; background: #d9ff3f; color: #18181b; }
.cockpit-secondary { margin-bottom: 10px; border: 1px solid var(--filet); border-radius: 9px; background: white; }
.cockpit-secondary > summary { display: flex; align-items: center; justify-content: space-between; gap: 15px; min-height: 44px; padding: 11px 14px; font-weight: 650; cursor: pointer; list-style: none; }
.cockpit-secondary > summary::-webkit-details-marker { display: none; }
.cockpit-secondary > summary::before { content: '⌄'; margin-right: 7px; color: var(--doux); }
.cockpit-secondary[open] > summary::before { transform: rotate(180deg); }
.cockpit-secondary > summary span { margin-left: auto; color: var(--doux); font-size: 11px; font-weight: 400; }
.cockpit-secondary > summary:focus-visible { outline: 2px solid var(--bleu); outline-offset: 2px; }
.cockpit-secondary[open] > summary { border-bottom: 1px solid var(--filet); }
.cockpit-secondary > .grid,.cockpit-secondary > .metric-grid { margin: 12px; }
.publication-safety > summary { align-items: center; justify-content: flex-start; border-bottom: 0; cursor: pointer; list-style: none; }
.publication-safety > summary > div { margin-right: auto; }
.publication-safety > summary::-webkit-details-marker { display: none; }
.publication-safety > summary::before { content: '⌄'; color: var(--doux); }
.publication-safety[open] > summary { border-bottom: 1px solid var(--filet); }
.publication-safety[open] > summary::before { transform: rotate(180deg); }
.publication-safety > summary:focus-visible { outline: 2px solid var(--bleu); outline-offset: 2px; }
.publication-guidance { display: flex; align-items: center; justify-content: space-between; gap: 16px; }
.publication-guidance p { margin: 0; }
@media (max-width: 760px) {
  .brand-nav-more { flex: 0 0 auto; margin-top: 0; padding-top: 0; border-top: 0; }
  .brand-nav-more > summary { white-space: nowrap; }
  .brand-nav-more[open] { display: contents; }
  .brand-nav-more > a { flex: 0 0 auto; margin-left: 0; }
  .brand-title { font-size: 21px; }
  .brand-topbar { align-items: flex-start; }
  .brand-nav { overflow-y: visible; }
  .agency-row > form { grid-column: 2; }
  .cockpit-next { align-items: flex-start; flex-direction: column; padding: 18px; }
  .cockpit-next h2 { font-size: 21px; }
  .publication-guidance { align-items: flex-start; flex-direction: column; }
}

/* Campaign proposals use a separate layout from dated calendar rows. */
.calendar-campaign { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:12px; padding:12px 0; }
.calendar-campaign>div { flex:1 1 320px; min-width:0; }
.calendar-campaign>span,.calendar-campaign>a,.calendar-campaign>details { flex:0 0 auto; }
.calendar-suggestions .card b,.calendar-suggestions .card small { display:block; margin-bottom:6px; }

.calendar-revise[open] { flex:1 0 100%; order:2; }
.calendar-revise form { margin-top:10px; padding:12px; border:1px solid var(--filet); border-radius:8px; background:var(--fond-2); }
.calendar-revise label { display:block; min-width:0; }
.calendar-revise .input,.calendar-revise .select { width:100%; }
/* Brand learning evidence and media coverage */
.learn-readiness{border:1px solid var(--line,#d8d8d4);padding:16px;margin:14px 0 22px;background:var(--surface,#fff)}
.learn-readiness-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin:12px 0}
.learn-readiness-item{border:1px solid var(--line,#d8d8d4);padding:12px;display:flex;flex-direction:column;gap:5px;min-width:0}
.learn-readiness-item b{font-size:13px}.learn-readiness-item span{font-size:12px;font-weight:700}
.learn-readiness-item.is-ready span{color:#247047}.learn-readiness-item.is-missing span{color:#9a6726}
.learn-readiness-item small,.learn-readiness>p{font-size:11px;line-height:1.5;color:var(--muted,#666)}
.learn-source-media{margin-top:9px;font-size:12px}.learn-source-media summary{cursor:pointer}
.learn-source-media ul{margin:7px 0 0;padding-left:18px}.learn-source-media li{margin:6px 0}.learn-source-media small{display:block;margin-top:3px}
@media(max-width:760px){.learn-readiness-grid{grid-template-columns:1fr}}
