/* Outil · Tarif et devis (Rates & quotes), id devis : seulement ce qui lui est propre (le reste vient de app/kit.css).
   Préfixe des classes : dv-
   À gauche : le résultat en grand (tarif jour, ou total du devis) et 5 lignes fixes (leur sens change avec l'onglet),
   l'info, Copier et le lien vers TVA. À droite : Mon tarif / Devis, puis les champs de l'onglet choisi, dans une zone de
   hauteur fixe (les deux onglets ont la même place : rien ne bouge en passant de l'un à l'autre). */
.dv .outil-fixe { align-items: stretch; }
.dv-carte { display: flex; flex-direction: column; border-radius: 16px; box-shadow: inset 0 0 0 1px var(--filet-doux); padding: 6px 18px 4px; }
.dv-grand { display: flex; justify-content: space-between; align-items: center; gap: 12px; height: 78px; border-bottom: 1px solid var(--filet-doux); }
.dv-grand span { font: var(--repere); letter-spacing: .1em; color: var(--texte2); white-space: nowrap; }
.dv-grand b { font: 700 clamp(26px, 7.5vw, 36px)/1 var(--display); letter-spacing: -.03em; font-variant-numeric: tabular-nums; color: var(--peche); white-space: nowrap; }
.dv-rangee { cursor: default; height: 44px; align-items: center; }
.dv-rangee:last-child { border-bottom: 0; }
.dv-rangee:hover .nom { color: var(--papier); }
.dv-rangee .val { font-variant-numeric: tabular-nums; }
.dv-info { flex: none; height: 2lh; margin: 0; overflow: hidden; }
.dv-actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 10px; }
.dv-actions .pastille { cursor: pointer; }
.dv-actions .pastille:hover { translate: none; }
.dv-actions .pastille:disabled { opacity: .3; cursor: default; }

.dv-zone { min-height: 330px; }
.dv-bloc { display: none; flex-direction: column; gap: 16px; }
.dv[data-mode="tarif"] [data-bloc="tarif"], .dv[data-mode="devis"] [data-bloc="devis"] { display: flex; }
.dv-deux { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; align-items: end; }
.dv-trois { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; align-items: end; }
.dv-prendre { align-self: flex-start; cursor: pointer; margin-top: -6px; }
.dv-prendre:hover { translate: none; }
.dv-prendre:disabled { opacity: .3; cursor: default; }
@media (max-width: 959px) { .dv-premier, .dv-zone { order: -1; } }
