body:has(.dr-page) .dr-document-select-button[aria-pressed=true] { color: #244d68; background: #eaf3f8; border-color: #6b9bb9; }
body:has(.dr-page) .dr-document-item.dr-document-selected { border-color: #6b9bb9; box-shadow: inset 3px 0 #447b9b; }
body:has(.dr-page) .dr-folder-display-controls { display: grid; gap: 8px; margin: 10px 0; }
body:has(.dr-page) .dr-folder-display-controls > label { display: grid; gap: 4px; font-size: 11px; color: var(--text-secondary, #64748b); }
body:has(.dr-page) .dr-folder-expansion-actions { display: flex; gap: 6px; flex-wrap: wrap; }
body:has(.dr-page) .dr-folder-expansion-actions button { flex: 1; white-space: nowrap; }
/* Deux choix explicites avant toute lecture ou création d'arborescence. */
body:has(.dr-page) .dr-zip-choice-options { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }
body:has(.dr-page) .dr-page .dr-zip-choice-options > button {
  display: flex; flex-direction: column; align-items: flex-start; gap: 12px;
  padding: 18px !important; text-align: left; white-space: normal;
  color: #193c73 !important; background: #edf3ff !important; border: 1px solid #b8cdf0 !important;
  border-top: 4px solid #2860d5 !important; border-radius: 12px; box-shadow: none;
}
body:has(.dr-page) .dr-page .dr-zip-choice-options > button:nth-child(2) {
  color: #165f51 !important; background: #eaf6f1 !important;
  border-color: #b8ddd1 !important; border-top-color: #20836e !important;
}
body:has(.dr-page) .dr-zip-choice-options > button > span { font-size: 25px; }
body:has(.dr-page) .dr-zip-choice-options strong { font-size: 15px; line-height: 1.4; }
body:has(.dr-page) .dr-zip-choice-options small { font-size: 12px; font-weight: 400; line-height: 1.6; color: #405773; }
body:has(.dr-page) .dr-page .dr-zip-choice-options > button:hover { box-shadow: 0 4px 12px #23395518; }
body:has(.dr-page) .dr-page .dr-zip-choice-options > button:focus-visible { outline: 3px solid #b88516; outline-offset: 3px; }
@media (max-width: 540px) { body:has(.dr-page) .dr-zip-choice-options { grid-template-columns: 1fr; } }
body:has(.dr-page) .dr-folder-contents .dr-contents-folder > .dr-yellow-folder { opacity: 1; }
body:has(.dr-page) .dr-yellow-folder { overflow: visible; flex-shrink: 0; }
body:has(.dr-page) .dr-yellow-folder .dr-folder-icon-back { fill: #eab43d; stroke: #b78012; stroke-width: 1; stroke-linejoin: round; }
body:has(.dr-page) .dr-yellow-folder .dr-folder-icon-paper { fill: #fff9df; stroke: #dec789; stroke-width: .7; }
body:has(.dr-page) .dr-yellow-folder .dr-folder-icon-front { fill: #ffd45a; stroke: #c59120; stroke-width: 1; stroke-linejoin: round; }
body:has(.dr-page) .dr-yellow-folder .dr-folder-icon-shine { fill: none; stroke: #fff0ae; stroke-width: 2; stroke-linecap: round; }
@media (forced-colors: active) {
  body:has(.dr-page) .dr-yellow-folder path { fill: Canvas; stroke: CanvasText; }
}

/* Document theme: stronger contrast and meaningful colour, scoped to the Data room. */
body:has(.dr-page) .dr-page.dr-documents-page {
  --dr-ink: #182f4b;
  --dr-muted: #52677f;
  --dr-accent: #245bd7;
  background: radial-gradient(ellipse at top right, #dff3ef 0, transparent 48%), #edf2f8;
  color: var(--dr-ink);
}
body:has(.dr-page) .dr-documents-page .dr-document-project-header h1 { color: #153559; }
body:has(.dr-page) .dr-documents-page .dr-document-project-header p,
body:has(.dr-page) .dr-documents-page .dr-document-access-note { color: var(--dr-muted); }
body:has(.dr-page) .dr-page.dr-documents-page > .dr-tabs > button { color: #50637e !important; }
body:has(.dr-page) .dr-page.dr-documents-page > .dr-tabs > button.active {
  background: #234ec1 !important;
  color: #fff !important;
  box-shadow: 0 3px 9px #234ec126;
}
body:has(.dr-page) .dr-page.dr-documents-page .dr-document-modes button.active {
  color: #174ab8 !important;
  box-shadow: inset 0 -3px #2b61db, 0 2px 6px #24385812;
}
body:has(.dr-page) .dr-documents-page .dr-document-folders {
  border-color: #d2dfec;
  box-shadow: 0 5px 18px #223d5b08;
}
body:has(.dr-page) .dr-documents-page .dr-folder-heading h2 { color: #183c63; font-size: 17px; }
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-heading button {
  background: #e6efff !important; color: #1b4dba !important; font-size: 12px !important;
}
body:has(.dr-page) .dr-documents-page .dr-folder-display-controls { flex-shrink: 0; margin: 5px 0; }
body:has(.dr-page) .dr-documents-page .dr-folder-display-controls > label { color: #52677f; font-weight: 600; }
body:has(.dr-page) .dr-documents-page .dr-folder-expansion-actions button { color: #24476c !important; font-size: 11px !important; }
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-organizer-v2 .dr-folder-symbol {
  width: 23px; height: 23px; color: var(--folder-color) !important;
  fill: var(--folder-bg); stroke: currentColor; stroke-width: 1.6;
  stroke-linejoin: round; flex-shrink: 0;
}
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-organizer-v2 .dr-tree-row {
  border-left: 3px solid transparent !important;
  transition: background .16s ease, box-shadow .16s ease;
}
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-organizer-v2 .dr-tree-row:hover {
  background: var(--folder-bg); box-shadow: inset 0 0 0 1px #d4dfeb;
}
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-organizer-v2 .dr-tree-row.selected {
  background: var(--folder-bg); border-left-color: var(--folder-color) !important;
  box-shadow: inset 0 0 0 1px #ccd9e6;
}
body:has(.dr-page) .dr-documents-page .dr-folder-caption > span { color: #29425f; font-size: 12px; }
body:has(.dr-page) .dr-documents-page .dr-folder-caption > small { color: #52677f; font-size: 10px; }
body:has(.dr-page) .dr-documents-page .dr-tree-row.selected .dr-folder-caption > span { color: #163858; font-weight: 750; }
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-organizer-v2 .dr-all-documents.active {
  background: #e5eeff !important; color: #204fbb !important;
  box-shadow: inset 3px 0 #2d62d8; font-weight: 750;
}
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-organizer-v2 > .dr-secondary { color: #6841ac !important; }
body:has(.dr-page) .dr-documents-page .dr-folder-organizer-v2 > .dr-folder-search input { border-color: #dce5ef; background: #f4f7fc; }
body:has(.dr-page) .dr-documents-page .dr-folder-context {
  border-color: #d2dfec; border-top: 3px solid #2a60d2;
  background: linear-gradient(115deg, #fff 60%, #eff5ff);
}
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-breadcrumb button { color: #52677f !important; font-size: 12px !important; }
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-breadcrumb button[aria-current=location] {
  background: #e7efff !important; color: #1847a7 !important;
}
body:has(.dr-page) .dr-documents-page .dr-folder-metrics { margin-top: 7px; }
body:has(.dr-page) .dr-documents-page .dr-folder-metrics > span {
  padding: 4px 8px !important; border-radius: 6px; font-size: 11px;
  background: #e5f4ee !important; color: #17614d !important; font-weight: 650;
}
body:has(.dr-page) .dr-documents-page .dr-folder-metrics > span:nth-child(2) { background: #e9effc !important; color: #244faa !important; }
body:has(.dr-page) .dr-page.dr-documents-page .dr-upload-primary {
  background: linear-gradient(120deg, #285ed9, #1949b8) !important;
  border-color: #1c4cb9 !important; color: #fff !important;
  box-shadow: 0 4px 10px #2455be24; font-weight: 700;
}
body:has(.dr-page) .dr-page.dr-documents-page .dr-zip-primary {
  background: #e3f3ee !important; color: #14634e !important; border-color: #b9ddd0 !important;
}
body:has(.dr-page) .dr-page.dr-documents-page .dr-zip-primary:disabled { opacity: .55; }
body:has(.dr-page) .dr-page.dr-documents-page .dr-document-select-button {
  min-height: 38px; border-color: #c6d6eb !important; background: #fff !important;
  color: #254c85 !important; white-space: nowrap; font-size: 12px !important;
}
body:has(.dr-page) .dr-page.dr-documents-page .dr-document-select-button[aria-pressed=true] {
  background: #245bd7 !important; color: #fff !important; border-color: #245bd7 !important;
}
body:has(.dr-page) .dr-documents-page .dr-document-filterbar { border-top-color: #dce5ef; }
body:has(.dr-page) .dr-page.dr-documents-page .dr-document-filters > input:not([type=checkbox]) { border-color: #d4dfeb; background: #fff; }
body:has(.dr-page) .dr-documents-page .dr-document-filters .dr-check { color: #465e78; }
body:has(.dr-page) .dr-documents-page .dr-document-scroll { border-color: #d2dfec; background: #fbfcff; }
body:has(.dr-page) .dr-documents-page .dr-folder-contents > header h3,
body:has(.dr-page) .dr-documents-page .dr-document-scope-title { font-size: 12px; color: #3b5571; font-weight: 700; }
body:has(.dr-page) .dr-documents-page .dr-folder-contents .dr-contents-folder { --dr-tile: #245bd7; --dr-tint: #eaf1ff; }
body:has(.dr-page) .dr-documents-page .dr-folder-contents .dr-contents-teal { --dr-tile: #087e6c; --dr-tint: #e3f6ef; }
body:has(.dr-page) .dr-documents-page .dr-folder-contents .dr-contents-violet { --dr-tile: #7844c0; --dr-tint: #f1eafa; }
body:has(.dr-page) .dr-documents-page .dr-folder-contents .dr-contents-gold { --dr-tile: #926210; --dr-tint: #fff3d9; }
body:has(.dr-page) .dr-documents-page .dr-folder-contents .dr-contents-rose { --dr-tile: #b03467; --dr-tint: #fce8f0; }
body:has(.dr-page) .dr-documents-page .dr-folder-contents .dr-contents-slate { --dr-tile: #52637b; --dr-tint: #edf1f6; }
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-contents button.dr-contents-folder {
  background: linear-gradient(120deg, var(--dr-tint), #fff) !important;
  border: 1px solid #d6e1ed !important; border-left: 4px solid var(--dr-tile) !important;
  padding: 14px !important; min-height: 78px; flex-basis: 220px;
  box-shadow: 0 2px 6px #23385408 !important;
  transition: transform .16s ease, box-shadow .16s ease;
}
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-contents button.dr-contents-folder:hover {
  background: var(--dr-tint) !important; transform: translateY(-2px);
  box-shadow: 0 6px 14px #23385418 !important;
}
body:has(.dr-page) .dr-documents-page .dr-contents-folder strong { color: var(--dr-tile); font-size: 13px; }
body:has(.dr-page) .dr-documents-page .dr-contents-folder small { color: #4d627a; font-size: 11px; }
body:has(.dr-page) .dr-documents-page .dr-contents-folder svg {
  width: 30px; height: 30px; fill: var(--dr-tint) !important; stroke: var(--dr-tile) !important; stroke-width: 1.5;
}
body:has(.dr-page) .dr-documents-page .dr-contents-folder > span:last-child { color: var(--dr-tile); font-size: 22px; }
body:has(.dr-page) .dr-documents-page .dr-document-item {
  --dr-file-accent: #3366c1; border-color: #d7e2ef; border-left: 3px solid var(--dr-file-accent);
  padding: 15px !important; box-shadow: 0 2px 5px #18385806; transition: border-color .16s, box-shadow .16s;
}
body:has(.dr-page) .dr-documents-page .dr-document-item[data-format=pdf] { --dr-file-accent: #c14c58; }
body:has(.dr-page) .dr-documents-page .dr-document-item[data-format=sheet] { --dr-file-accent: #20875c; }
body:has(.dr-page) .dr-documents-page .dr-document-item:hover { background: #fff; border-color: #9fb8dc; box-shadow: 0 4px 12px #243b5c0d; }
body:has(.dr-page) .dr-documents-page .dr-document-item.dr-document-selected { background: #edf4ff; border-color: #3970da; box-shadow: inset 3px 0 #3970da; }
body:has(.dr-page) .dr-documents-page .dr-document-title strong { color: #193452; font-size: 14px; }
body:has(.dr-page) .dr-documents-page .dr-document-main p { color: #475f7b; font-size: 12px; }
body:has(.dr-page) .dr-documents-page .dr-document-main small { color: #5c7088; font-size: 11px; }
body:has(.dr-page) .dr-page.dr-documents-page .dr-document-reference { background: #e7eefb !important; color: #345788 !important; }
body:has(.dr-page) .dr-page.dr-documents-page .dr-document-main > .dr-actions > button {
  background: #e6efff !important; color: #204fb3 !important; font-size: 12px !important;
}
body:has(.dr-page) .dr-documents-page .dr-document-zip-selection {
  background: #e7f0ff; color: #1c468d; border-color: #baceef; padding: 11px 13px; font-size: 12px;
}
body:has(.dr-page) .dr-documents-page input[type=checkbox] { accent-color: #245bd7; }
body:has(.dr-page) .dr-documents-page button:focus-visible,
body:has(.dr-page) .dr-documents-page summary:focus-visible,
body:has(.dr-page) .dr-documents-page input:focus-visible { outline: 3px solid #b88516 !important; outline-offset: 2px; }
@media (max-width: 800px) {
  body:has(.dr-page) .dr-documents-page .dr-document-filters .dr-document-select-button { grid-column: 1 / -1; justify-self: start; }
  body:has(.dr-page) .dr-documents-page .dr-document-filters > input:not([type=checkbox]) { min-width: 0 !important; }
  body:has(.dr-page) .dr-documents-page .dr-folder-contents .dr-contents-folder { flex-basis: 185px; }
  body:has(.dr-page) .dr-documents-page .dr-document-title strong { font-size: 13px; }
}
@media (prefers-reduced-motion: reduce) {
  body:has(.dr-page) .dr-documents-page .dr-document-item,
  body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-organizer-v2 .dr-tree-row,
  body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-contents button.dr-contents-folder { transition: none; }
  body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-contents button.dr-contents-folder:hover { transform: none; }
}
body:has(.dr-page) .dr-documents-page > .dr-document-project-header {
  background: linear-gradient(115deg, #153654, #1e5d6a);
  border: 0; border-left: 4px solid #c6a557; border-radius: 14px;
  padding: 16px 20px;
}
body:has(.dr-page) .dr-documents-page .dr-document-project-header h1 { color: #fff; }
body:has(.dr-page) .dr-documents-page .dr-document-project-header p { color: #d3e6ee; }
body:has(.dr-page) .dr-documents-page .dr-document-project-header .dr-back { color: #ecce8a; }
body:has(.dr-page) .dr-documents-page .dr-folder-heading {
  padding: 10px; border-radius: 10px; background: #1d3f62;
}
body:has(.dr-page) .dr-documents-page .dr-folder-heading h2 { color: #fff; }
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-contents button.dr-contents-folder {
  background: var(--dr-tint) !important;
}
body:has(.dr-page) .dr-documents-page .dr-contents-folder svg { fill: var(--dr-tile) !important; stroke: var(--dr-tile) !important; }
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-organizer-v2 .dr-folder-symbol { fill: var(--folder-color); fill-opacity: .85; }
@media (max-width: 800px) {
  body:has(.dr-page) .dr-documents-page .dr-folder-context { grid-template-columns: minmax(0, 1fr); }
  body:has(.dr-page) .dr-documents-page .dr-folder-context > .dr-actions {
    justify-content: flex-start; flex-wrap: wrap !important;
  }
  body:has(.dr-page) .dr-documents-page .dr-folder-metrics > span { font-size: 10px; }
  body:has(.dr-page) .dr-documents-page .dr-document-split > .dr-split-sidebar {
    flex: 0 0 auto; height: auto; max-height: 45dvh;
  }
  body:has(.dr-page) .dr-documents-page .dr-document-folders { height: auto; overflow: auto; }
  body:has(.dr-page) .dr-documents-page .dr-folder-organizer-v2 { flex: 0 0 auto; }
  body:has(.dr-page) .dr-documents-page .dr-folder-organizer-v2 > .dr-folder-tree { flex: 0 0 auto; max-height: 190px; }
}
/* Vue par dossiers : repère jaune familier, couleurs de classement conservées en bordure. */
body:has(.dr-page) .dr-documents-page .dr-folder-contents .dr-contents-children {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(min(100%, 180px), 1fr));
  gap: 12px; overflow: visible; padding: 3px 2px 6px; margin-top: 12px;
}
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-contents button.dr-contents-folder {
  position: relative; display: flex; flex-direction: column; align-items: flex-start;
  justify-content: flex-start; gap: 12px; min-height: 145px; padding: 16px !important;
  background: #fffef9 !important; border-color: #e3e0d4 !important;
  border-left: 3px solid var(--dr-tile) !important; border-radius: 12px;
}
body:has(.dr-page) .dr-documents-page .dr-folder-contents .dr-contents-folder > .dr-yellow-folder {
  width: 55px; height: 46px; opacity: 1; stroke: none !important;
}
body:has(.dr-page) .dr-documents-page .dr-contents-folder > span:first-of-type { flex: 0 0 auto; width: 100%; gap: 6px; }
body:has(.dr-page) .dr-documents-page .dr-contents-folder strong { color: #263c54; font-size: 14px; }
body:has(.dr-page) .dr-documents-page .dr-contents-folder small { color: #53657a; font-size: 11px; line-height: 1.5; }
body:has(.dr-page) .dr-documents-page .dr-contents-folder > span:last-child {
  position: absolute; top: 13px; right: 14px; color: #667b95; font-size: 22px;
}
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-contents button.dr-contents-folder:hover {
  background: #fff8dc !important; border-color: #d7b858 !important;
}
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-contents button.dr-contents-folder:active { background: #fff0ba !important; }
body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-organizer-v2 .dr-folder-symbol { width: 26px; height: 26px; fill-opacity: 1; }
body:has(.dr-page) .dr-documents-page .dr-folder-contents > header h3 { font-size: 13px; }
@media (max-width: 800px) {
  body:has(.dr-page) .dr-documents-page .dr-folder-contents:not(:has(.dr-folder-return)) { display: block; }
  body:has(.dr-page) .dr-documents-page .dr-folder-contents .dr-contents-children {
    grid-template-columns: repeat(auto-fill, minmax(min(100%, 140px), 1fr)); gap: 9px;
  }
  body:has(.dr-page) .dr-page.dr-documents-page .dr-folder-contents button.dr-contents-folder { min-height: 130px; padding: 12px !important; }
  body:has(.dr-page) .dr-documents-page .dr-folder-contents .dr-contents-folder > .dr-yellow-folder { width: 47px; height: 40px; }
  body:has(.dr-page) .dr-documents-page .dr-contents-folder strong { font-size: 13px; }
}