/* Boîte « Demander » (docs/demander.md) : dialogue de la ville et page légère /demander.html. S'appuie sur style.css. */
.bouton-demander kbd { font: 600 10.5px var(--mono); margin-left: 5px; padding: 0 5px; border-radius: 5px; border: 1px solid rgba(23, 19, 10, 0.5); }
dialog.demander { width: min(680px, calc(100vw - 32px)); }
.demander h2 { margin: 0; font-size: 22px; }
.demander .dm-tete { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; margin: 0 28px 10px 0; }
.demander .dm-onglets { display: flex; gap: 4px; padding: 3px; border-radius: 10px; background: rgba(255, 255, 255, 0.04); border: 1px solid var(--bord); }
.demander .dm-onglets button { background: none; border: none; padding: 5px 11px; border-radius: 7px; font-size: 12.5px; color: var(--doux); }
.demander .dm-onglets button:hover { color: var(--texte); }
.demander .dm-onglets button.actif { background: rgba(242, 193, 78, 0.16); color: var(--or); font-weight: 600; }
.demander [data-panneau][hidden] { display: none; }
.demander .dm-sous { margin: 0 0 14px; color: var(--doux); font-size: 12.5px; line-height: 1.5; }
.demander .dm-texte {
  width: 100%; min-height: 92px; resize: vertical; font: inherit; font-size: 15px; line-height: 1.5; color: var(--texte);
  background: rgba(255, 255, 255, 0.05); border: 1px solid var(--bord); border-radius: 10px; padding: 11px 13px;
}
.demander .dm-texte:focus { outline: none; border-color: var(--or); }
.demander .dm-reglages { display: flex; flex-direction: column; gap: 10px; margin: 12px 0; }
.demander .dm-curseur { display: flex; align-items: center; gap: 10px; font-size: 12.5px; color: var(--doux); }
.demander .dm-curseur input { flex: 1; min-width: 80px; }
.demander .dm-val { min-width: 84px; text-align: right; color: var(--or); font-weight: 600; font-size: 12.5px; }
.demander .dm-temps { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; font-size: 12.5px; color: var(--doux); }
.demander .dm-temps > span { margin-right: 4px; }
.demander .dm-temps button { background: rgba(255, 255, 255, 0.04); border: 1px solid var(--bord); padding: 5px 10px; border-radius: 8px; font-size: 12.5px; color: #cdd3e1; }
.demander .dm-temps button:hover { border-color: rgba(242, 193, 78, 0.5); }
.demander .dm-temps button.actif { background: var(--or); border-color: var(--or); color: #17130a; font-weight: 600; }
.demander .dm-ligne { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 18px; }
.demander .dm-conf { flex: 0 1 260px; border-bottom: none; padding: 0; gap: 10px; }
.demander .dm-dossier { flex: 1 1 220px; display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: var(--doux); }
.demander .dm-dossier input { flex: 1; font-family: var(--mono); font-size: 12px; }
.demander .dm-proposition { padding: 12px 14px; border-radius: 10px; background: rgba(0, 0, 0, 0.32); border: 1px solid var(--bord); min-height: 64px; }
.demander .dm-proposition .note { margin: 6px 0; }
.demander .dm-choix { display: flex; align-items: flex-start; gap: 10px; padding-left: 10px; border-left: 3px solid var(--c, var(--or)); }
.demander .dm-choix .carre { margin-top: 5px; }
.demander .dm-choix > div { flex: 1; min-width: 0; }
.demander .dm-explication { display: block; font-size: 15px; line-height: 1.4; font-weight: 600; }
.demander .dm-choix small { display: block; margin-top: 3px; color: var(--doux); font-family: var(--mono); font-size: 11.5px; }
.demander .dm-choix .zone-pt { flex: none; width: 10px; height: 10px; border-radius: 50%; margin-top: 6px; }
.demander .dm-details { margin: 8px 0 0; padding: 0 0 0 26px; color: #c3cadb; font-size: 12px; line-height: 1.6; }
.demander .dm-suggestion { margin: 8px 0 0; font-size: 12px; color: #c9bfff; }
.demander .dm-modifs { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px 10px; margin-top: 12px; }
.demander .dm-modifs label { display: flex; flex-direction: column; gap: 4px; font-size: 11.5px; color: var(--doux); min-width: 0; }
.demander .dm-modifs em { font-style: normal; color: #6f7894; }
.demander .dm-modifs select { width: 100%; font-size: 12.5px; padding: 6px 8px; }
.demander .dm-modifs select:disabled { opacity: 0.45; }
.demander .dm-quotas { margin: 10px 0 0; color: #6f7894; font-size: 11px; }
.demander .dm-pied { display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; margin-top: 12px; }
.demander .dm-pied .boutons { margin: 0 0 0 auto; flex: 0 0 auto; }
.demander .dm-pied .boutons .bouton { flex: none; }
.demander .dm-pied kbd { font: 600 10.5px var(--mono); margin-left: 4px; opacity: 0.7; }
.demander .dm-message { flex: 1 1 200px; font-size: 12.5px; color: #9ff5c4; }
.demander .dm-message.erreur { color: var(--rouge); }
.demander .bouton:disabled { opacity: 0.45; cursor: default; }
.demander .dm-projet { gap: 6px 12px; }
.demander .dm-projet-champ { display: flex; align-items: center; gap: 8px; font-size: 12.5px; color: var(--doux); flex: 0 1 340px; }
.demander .dm-projet-champ select { flex: 1; min-width: 0; font-size: 12.5px; padding: 6px 8px; }
.demander .dm-projet .note { margin: 0; font-size: 11px; }
.demander .dm-nouveau { padding: 12px 14px; border-radius: 10px; border: 1px dashed rgba(242, 193, 78, 0.4); background: rgba(242, 193, 78, 0.04); }
.demander .dm-nouveau h3 { margin: 0 0 8px; font-size: 13.5px; color: var(--or); }
.demander .dm-nouveau label { display: flex; flex-direction: column; gap: 4px; font-size: 11.5px; color: var(--doux); }
.demander .dm-nouveau-champs { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0, 1fr); gap: 8px 10px; margin-bottom: 8px; }
.demander .dm-nouveau textarea { font: inherit; font-size: 12.5px; color: var(--texte); background: rgba(255, 255, 255, 0.05); border: 1px solid var(--bord); border-radius: 8px; padding: 7px 9px; resize: vertical; }
.demander .dm-nouveau .boutons { margin: 8px 0 0; justify-content: flex-end; }
.demander .dm-nouveau .boutons .bouton { flex: none; }
.demander .dm-md { max-height: 180px; overflow: auto; margin: 4px 0 0; padding: 8px 10px; border-radius: 8px; background: rgba(0, 0, 0, 0.4); border: 1px solid var(--bord); font: 11.5px/1.5 var(--mono); white-space: pre-wrap; color: #cdd3e1; }
.demander .dm-commande { display: flex; flex-wrap: wrap; align-items: center; gap: 6px; margin: 8px 0 0; font-size: 12px; color: var(--doux); }
.demander .dm-commande code { font-size: 11.5px; }
.demander .dm-commande .copier { padding: 3px 9px; }
.demander .dm-liste-tete { display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.demander .dm-demandes { list-style: none; margin: 0; padding: 0; max-height: min(60vh, 520px); overflow: auto; }
.demander .dm-dem { border-bottom: 1px solid var(--bord); }
.demander .dm-dem summary { list-style: none; display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: 2px 10px; padding: 8px 2px; cursor: pointer; font-size: 13px; }
.demander .dm-dem summary::-webkit-details-marker { display: none; }
.demander .dm-dem time { font: 11px var(--mono); color: #6f7894; padding-top: 2px; }
.demander .dm-dem b { font-weight: 500; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.demander .dm-dem small { grid-column: 2 / -1; color: var(--doux); font-size: 11px; }
.demander .dm-statut { font: 600 10.5px var(--mono); padding: 2px 7px; border-radius: 999px; background: rgba(255, 255, 255, 0.07); color: #cdd3e1; white-space: nowrap; }
.demander .st-en-cours .dm-statut { background: rgba(242, 193, 78, 0.18); color: var(--or); }
.demander .st-finie .dm-statut, .demander .st-ouverte .dm-statut { background: rgba(61, 220, 132, 0.15); color: var(--vert); }
.demander .st-erreur .dm-statut { background: rgba(255, 77, 109, 0.15); color: var(--rouge); }
.demander .st-notee .dm-statut { background: rgba(169, 155, 255, 0.16); color: #c9bfff; }
.demander .dm-dem details[open] { padding-bottom: 8px; }
.demander .dm-dem-texte { margin: 2px 0 6px; font-size: 12.5px; line-height: 1.5; white-space: pre-wrap; color: #dfe4ef; }
.demander .dm-dem .note { margin: 2px 0; }
.demander .dm-table-cadre { overflow-x: auto; }
.demander .dm-table { width: 100%; border-collapse: collapse; font-size: 12.5px; }
.demander .dm-table th, .demander .dm-table td { padding: 5px 4px; text-align: left; border-bottom: 1px solid var(--bord); vertical-align: middle; }
.demander .dm-table thead th { font-size: 11px; font-weight: 500; color: var(--doux); }
.demander .dm-table tbody th { font-weight: 500; white-space: nowrap; padding-right: 8px; }
.demander .dm-table select, .demander .dm-table input { width: 100%; font-size: 12px; padding: 5px 7px; }
.demander .dm-table td:nth-child(2) { width: 19%; }
.demander .dm-table td:nth-child(3) { width: 21%; }
.demander .dm-table td:last-child { min-width: 200px; }
.demander .dm-relu { font-family: var(--mono); font-size: 10.5px; color: #9ff5c4; }
.demander .dm-relu.rl-a-revoir { color: var(--jaune); }
.demander .dm-relu.rl-echec, .demander .dm-relu.rl-doute, .demander .dm-relu.rl-en-attente, .demander .dm-relu.rl-en-cours { color: var(--doux); }
.demander .dm-remarques { margin: 2px 0 6px; padding-left: 20px; font-size: 12px; line-height: 1.5; color: #dfe4ef; }
@media (max-width: 560px) {
  .demander .dm-nouveau-champs { grid-template-columns: minmax(0, 1fr); }
  .demander .dm-modifs { grid-template-columns: minmax(0, 1fr); }
  .demander .dm-val { min-width: 0; }
}
