
/* ============================================================================
   Onglet « Dates » (26/10/2026, dates.js) : dates reliées au site, factures, fiche technique / rider, musiciens.
   Des cartes et des listes, pas de tableau. Couleurs des musiciens : m1 Titouan, m2 Julien, m3 Dénéel.
   ========================================================================== */
#tab-dates, .dt-overlay{--c-soft:#F7F6F2; --c-line:#E9E6DD; --c-text:#1A1915; --c-muted:#56534B; --c-dim:#8A867C; --c-accent:#E2C400; --c-accent-ink:#3D3300;
  --m1:#E2C400; --m1-ink:#3D3300; --m2:#2F8F6A; --m2-ink:#fff; --m3:#3C6E9E; --m3-ink:#fff;}
body.dt-modal-open{overflow:hidden;}
.dt-head{display:flex; align-items:center; justify-content:space-between; gap:12px 18px; flex-wrap:wrap; margin-bottom:16px;}
.dt-views{display:flex; gap:8px; flex-wrap:wrap;}
.dt-vue{display:flex; align-items:center; gap:10px; border:1px solid var(--border); background:var(--surface); border-radius:14px; padding:8px 14px 8px 9px;
  cursor:pointer; text-align:left; box-shadow:var(--shadow-sm); transition:border-color .15s, box-shadow .15s, transform .15s; font:inherit; color:var(--text);}
.dt-vue:hover{border-color:var(--accent); transform:translateY(-1px);}
.dt-vue[aria-selected="true"]{border-color:var(--accent); background:var(--accent-wash); box-shadow:0 0 0 2px rgba(226,196,0,.35), var(--shadow-sm);}
.dt-vue-ic{width:34px; height:34px; border-radius:10px; display:grid; place-items:center; background:var(--surface-2); font-size:17px; font-weight:700; color:var(--accent-ink); flex:none;}
.dt-vue-txt{display:flex; flex-direction:column; line-height:1.2;}
.dt-vue-txt b{font-family:Oswald, sans-serif; font-weight:600; font-size:15px; letter-spacing:.02em;}
.dt-vue-txt small{font-size:12.5px; color:var(--text-faint); font-weight:600;}
.dt-vue-txt small.warn{color:var(--warn);} .dt-vue-txt small.good{color:var(--good);}
.dt-head-r{display:flex; align-items:center; gap:14px;}
.dt-site{font-size:13px; color:var(--text-muted); display:flex; align-items:center; gap:6px; white-space:nowrap;}
.dt-dot{width:8px; height:8px; border-radius:99px; display:inline-block; background:var(--text-faint);}
.dt-dot.good{background:var(--good); box-shadow:0 0 0 3px var(--good-soft);} .dt-dot.crit{background:var(--crit); box-shadow:0 0 0 3px var(--crit-soft);}

.dt-layout{display:grid; grid-template-columns:minmax(0, 1fr) 360px; gap:20px; align-items:start;}
.dt-main{min-width:0;}
.dt-side{position:sticky; top:92px;}
.dt-side .card h2{font-size:13px;}
.dt-side-body{padding:14px 16px;}
.dt-bar{display:flex; align-items:center; gap:10px 14px; flex-wrap:wrap; margin:0 0 12px;}
.dt-titre{font-family:Oswald, sans-serif; font-weight:600; text-transform:uppercase; letter-spacing:.04em; font-size:18px; margin:0; margin-right:auto;}
.dt-titre small{font-family:Karla, sans-serif; font-size:14px; color:var(--text-faint); margin-left:6px; letter-spacing:0;}
.dt-titre-2{margin:26px 0 10px;}
.dt-q{border:1px solid var(--border); background:var(--surface); border-radius:10px; padding:8px 12px; font:inherit; font-size:14px; width:220px; color:var(--text);}
.dt-q:focus{outline:none; box-shadow:var(--ring); border-color:var(--accent);}
.dt-vide{background:var(--surface); border:1px dashed var(--border-strong); border-radius:var(--radius); padding:28px; text-align:center; color:var(--text-muted);}
.dt-vide.petit{padding:14px; font-size:14px; border-radius:var(--radius-sm);}
.dt-bandeau{display:flex; align-items:center; gap:12px; justify-content:space-between; background:#1d1d1b; color:#fff; border-radius:12px; padding:10px 14px; margin-bottom:14px; font-size:14px;}

/* calendrier */
.dt-cal{flex:none; width:58px; border-radius:12px; overflow:hidden; background:var(--surface); border:1px solid var(--border); text-align:center; display:flex; flex-direction:column; box-shadow:var(--shadow-sm);}
.dt-cal-m{background:var(--accent); color:var(--accent-ink); font-family:Oswald, sans-serif; font-size:11.5px; font-weight:600; text-transform:uppercase; letter-spacing:.06em; padding:2px 0;}
.dt-cal-d{font-family:Oswald, sans-serif; font-size:25px; font-weight:600; line-height:1.15; padding-top:2px;}
.dt-cal-w{font-size:11.5px; color:var(--text-faint); padding-bottom:4px;}
.dt-cal.petit{width:46px; border-radius:10px;}
.dt-cal.petit .dt-cal-m{font-size:10px;} .dt-cal.petit .dt-cal-d{font-size:19px;} .dt-cal.petit .dt-cal-w{font-size:10.5px; padding-bottom:2px;}

/* cartes des dates à venir */
.dt-cards{display:grid; grid-template-columns:repeat(auto-fill, minmax(340px, 1fr)); gap:16px;}
.dt-card{background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow); padding:16px; display:flex; flex-direction:column; gap:12px; transition:box-shadow .2s, border-color .2s;}
.dt-card:hover{box-shadow:var(--shadow-lg); border-color:var(--border-strong);}
.dt-card-top{display:flex; gap:14px; align-items:flex-start;}
.dt-card-id{flex:1; min-width:0;}
.dt-card-id h3{margin:2px 0 3px; font-size:18px; font-weight:700; line-height:1.25; overflow-wrap:anywhere;}
.dt-card-id p{margin:0; color:var(--text-muted); font-size:14px;}
.dt-site-b{flex:none; font-size:12px; font-weight:700; border-radius:99px; padding:3px 10px; white-space:nowrap; text-decoration:none;}
.dt-site-b.on{background:var(--good-soft); color:var(--good-ink);}
.dt-site-b.on:hover{background:#cfe8d8;}
.dt-site-b.off{background:var(--surface-3); color:var(--text-muted);}
.dt-site-b.warn{background:var(--warn-soft); color:var(--warn-ink);}
.dt-contact{font-size:14px; min-height:20px;}
.dt-mail{color:var(--text-muted); overflow-wrap:anywhere;}
.dt-lien{border:0; background:none; padding:0; font:inherit; font-size:13.5px; font-weight:600; color:var(--info); cursor:pointer; text-decoration:underline; text-decoration-color:rgba(43,95,138,.3); text-underline-offset:3px;}
.dt-lien:hover{text-decoration-color:currentColor;}
.dt-lien.crit{color:var(--crit);}
.dt-steps{display:grid; grid-template-columns:repeat(3, minmax(0, 1fr)); gap:8px;}
.dt-step{display:flex; flex-direction:column; gap:2px; text-align:left; border:1px solid var(--border); border-left-width:4px; background:var(--surface-2); border-radius:10px;
  padding:8px 10px; font:inherit; font-size:13px; font-weight:700; color:var(--text); cursor:pointer; min-width:0; transition:background .15s;}
.dt-step small{font-weight:500; font-size:12px; color:var(--text-muted); line-height:1.3;}
.dt-step:hover{background:#fff;}
.dt-step.good{border-left-color:var(--good);} .dt-step.warn{border-left-color:var(--warn); background:#FDF5E7;}
.dt-step.crit{border-left-color:var(--crit); background:#FCF0ED;} .dt-step.mute{border-left-color:var(--border-strong); color:var(--text-muted);}
.dt-card-foot{display:flex; align-items:center; gap:8px; padding-top:10px; border-top:1px solid var(--border);}
.dt-prix{font-size:13px; color:var(--text-muted);}
.dt-ct{font-size:11.5px; font-weight:800; letter-spacing:.04em; text-transform:uppercase; border-radius:6px; padding:2px 7px; background:var(--surface-3); color:var(--text-muted);}
.dt-ct.guso{background:var(--info-soft); color:var(--info-ink);} .dt-ct.ben{background:#F1E6F7; color:#5B2A73;} .dt-ct.facture{background:var(--good-soft); color:var(--good-ink);}
.dt-ct.vide{background:none; border:1px dashed var(--border-strong); font-weight:600;}

/* pastilles des musiciens : pleine = payé */
.dt-avs{display:inline-flex; gap:4px; margin-left:auto;}
.dt-av{width:26px; height:26px; border-radius:99px; display:inline-grid; place-items:center; font-family:Oswald, sans-serif; font-size:13px; font-weight:600; flex:none;
  border:2px dashed var(--border-strong); color:var(--text-faint); background:var(--surface);}
.dt-av.on{border-style:solid;}
.dt-av.m1.on{background:var(--m1); border-color:var(--m1); color:var(--m1-ink);}
.dt-av.m2.on{background:var(--m2); border-color:var(--m2); color:var(--m2-ink);}
.dt-av.m3.on{background:var(--m3); border-color:var(--m3); color:var(--m3-ink);}
.dt-av.xl{width:58px; height:58px; font-size:28px;}
.dt-vue .dt-av{width:34px; height:34px; font-size:16px;}

/* listes (mois, lignes) */
.dt-mois{margin-bottom:14px;}
.dt-mois-t{font-family:Oswald, sans-serif; font-weight:600; text-transform:uppercase; letter-spacing:.05em; font-size:13px; color:var(--text-muted); margin:0 0 6px 4px; display:flex; gap:8px; align-items:baseline;}
.dt-mois-t small{font-family:Karla, sans-serif; text-transform:none; letter-spacing:0; color:var(--text-faint); font-weight:600;}
.dt-rows{background:var(--surface); border:1px solid var(--border); border-radius:var(--radius-sm); box-shadow:var(--shadow-sm); overflow:hidden;}
.dt-row{display:flex; align-items:center; gap:12px; padding:9px 12px; border-top:1px solid var(--border); cursor:pointer; transition:background .12s;}
.dt-row:first-child{border-top:0;}
.dt-row:hover{background:var(--accent-wash);}
.dt-row:focus-visible{outline:none; box-shadow:inset 0 0 0 3px rgba(226,196,0,.45);}
.dt-row-id{flex:1; min-width:0; display:flex; flex-direction:column;}
.dt-row-id b{font-size:15px; overflow-wrap:anywhere;}
.dt-row-id small{font-size:12.5px; color:var(--text-faint); overflow-wrap:anywhere;}
.dt-pill{font-size:12px; font-weight:700; border-radius:99px; padding:3px 10px; white-space:nowrap; background:var(--surface-3); color:var(--text-muted);}
.dt-pill.good{background:var(--good-soft); color:var(--good-ink);} .dt-pill.warn{background:var(--warn-soft); color:var(--warn-ink);}
.dt-pill.crit{background:var(--crit-soft); color:var(--crit-ink);}
.dt-row .dt-avs{margin-left:0;}
.dt-absentes{margin-top:18px; font-size:13.5px; color:var(--text-muted); display:flex; flex-wrap:wrap; gap:6px 14px; align-items:center;}
.dt-abs{background:var(--surface); border:1px solid var(--border); border-radius:99px; padding:3px 4px 3px 12px; display:inline-flex; gap:8px; align-items:center;}
.dt-abs .dt-lien{background:var(--accent-soft); border-radius:99px; padding:2px 10px; text-decoration:none; color:var(--accent-ink);}
.dt-abs .dt-lien.dt-ign{background:none; color:var(--text-faint); padding:2px 6px;}

/* boutons */
.dt-btn{display:inline-flex; align-items:center; font:inherit; font-size:13px; font-weight:700; border:1px solid var(--c-line); background:#fff; color:var(--c-text); border-radius:9px; padding:6px 11px; cursor:pointer; white-space:nowrap;}
.dt-btn:hover{border-color:var(--accent);}
.dt-btn.ok{background:var(--accent); border-color:var(--accent); color:var(--accent-ink);}
.dt-btn.ok:hover{background:var(--accent-strong);}
.dt-btn:disabled{opacity:.5; cursor:default;}
.dt-seg{display:inline-flex; background:var(--c-soft); border:1px solid var(--c-line); border-radius:9px; padding:2px; gap:2px; flex:none;}
.dt-seg button{border:0; background:none; font:inherit; font-size:12.5px; font-weight:700; color:var(--c-dim); padding:4px 9px; border-radius:7px; cursor:pointer; white-space:nowrap;}
.dt-seg button[aria-pressed="true"]{background:#fff; color:var(--c-text); box-shadow:0 1px 2px rgba(0,0,0,.1), 0 0 0 1px var(--c-line);}
.dt-paye{display:inline-flex; flex-direction:column; align-items:center; min-width:112px; font:inherit; font-size:13px; font-weight:700; border-radius:9px; padding:6px 10px; cursor:pointer; line-height:1.15;
  border:1.5px dashed var(--border-strong); background:#fff; color:var(--text-muted);}
.dt-paye:hover{border-color:var(--good); color:var(--good-ink);}
.dt-paye.on{border:1.5px solid var(--good); background:var(--good-soft); color:var(--good-ink);}
.dt-paye small{font-weight:500; font-size:11.5px;}

/* vue Factures */
.dt-sums{display:grid; grid-template-columns:repeat(4, minmax(0, 1fr)); gap:12px; margin-bottom:18px;}
.dt-sum{display:flex; flex-direction:column; gap:2px; background:var(--surface); border:1px solid var(--border); border-top:4px solid var(--border-strong); border-radius:var(--radius-sm);
  padding:12px 14px; text-decoration:none; color:var(--text); box-shadow:var(--shadow-sm);}
.dt-sum:hover{box-shadow:var(--shadow);}
.dt-sum span{font-size:13.5px; font-weight:700; color:var(--text-muted);}
.dt-sum b{font-family:Oswald, sans-serif; font-size:28px; font-weight:600; line-height:1.15;}
.dt-sum small{font-size:12.5px; color:var(--text-faint);}
.dt-sum.warn{border-top-color:var(--warn);} .dt-sum.info{border-top-color:var(--info);} .dt-sum.crit{border-top-color:var(--crit);} .dt-sum.good{border-top-color:var(--good);}
.dt-sec{margin-bottom:20px; scroll-margin-top:100px;}
.dt-sec h3{font-family:Oswald, sans-serif; font-weight:600; text-transform:uppercase; letter-spacing:.04em; font-size:14px; margin:0 0 8px 2px; display:inline-flex; gap:8px; align-items:baseline;}
.dt-sec h3 small{font-family:Karla, sans-serif; text-transform:none; letter-spacing:0; color:var(--text-faint); font-weight:600; font-size:13px;}
.dt-sec details > summary{cursor:pointer; list-style:none;}
.dt-sec details > summary::-webkit-details-marker{display:none;}
.dt-sec details > summary h3::before{content:'▸'; color:var(--text-faint); margin-right:2px; transition:transform .15s; display:inline-block;}
.dt-sec details[open] > summary h3::before{transform:rotate(90deg);}
.dt-fx-info{font-size:13px; color:var(--text-muted); white-space:nowrap;}
.dt-retard{color:var(--crit); font-weight:700;}
.dt-fx-m{font-family:Oswald, sans-serif; font-weight:600; font-size:17px; min-width:74px; text-align:right; font-variant-numeric:tabular-nums;}
.dt-fx-act{display:flex; gap:6px; min-width:0;}
.dt-fx-act:empty{display:none;}

/* vue d'un musicien */
.dt-mb-head{display:flex; align-items:center; gap:18px; flex-wrap:wrap; background:var(--surface); border:1px solid var(--border); border-radius:var(--radius); box-shadow:var(--shadow); padding:18px 20px; margin-bottom:16px;}
.dt-mb-txt{flex:1; min-width:200px;}
.dt-mb-txt h2{margin:0; font-family:Oswald, sans-serif; font-weight:600; font-size:24px; text-transform:uppercase; letter-spacing:.03em;}
.dt-mb-txt p{margin:2px 0 8px; color:var(--text-muted);}
.dt-prog{height:8px; border-radius:99px; background:var(--surface-3); overflow:hidden; max-width:420px;}
.dt-prog span{display:block; height:100%; background:linear-gradient(90deg, var(--good), #57B98A); border-radius:99px;}
.dt-mb-stats{display:flex; gap:10px;}
.dt-mb-stats div{background:var(--surface-2); border:1px solid var(--border); border-radius:12px; padding:8px 14px; display:flex; flex-direction:column; align-items:center; min-width:96px;}
.dt-mb-stats b{font-family:Oswald, sans-serif; font-size:24px; font-weight:600; line-height:1.1;}
.dt-mb-stats span{font-size:12.5px; color:var(--text-muted);}
.dt-mb-stats .warn b{color:var(--warn);} .dt-mb-stats .good b{color:var(--good);}
.dt-mrow .dt-cachet{margin-left:auto;}
.dt-mb-txt h2 small{font-family:Karla, sans-serif; text-transform:none; letter-spacing:0; font-size:14px; font-weight:700; color:var(--info); margin-left:6px;}
.dt-note{font-size:13px; color:var(--text-faint);}
/* liste complete de « Factures et cachets » (26/10/2026) */
.dt-sec-t{display:flex; align-items:center; justify-content:space-between; gap:8px 14px; flex-wrap:wrap; margin-bottom:8px;}
.dt-sec-t h3{margin-bottom:0;}
.dt-sec-t .qa-seg button small{font-weight:600; color:var(--c-dim); margin-left:2px;}
.dt-cachet{display:flex; align-items:center; gap:6px; min-width:170px;}
.dt-cachet small{font-size:12.5px; color:var(--text-muted); white-space:nowrap;}
.dt-drow .dt-pill{min-width:150px; text-align:center;}

/* colonne de droite */
.dt-doc{padding:12px 0; border-top:1px solid var(--border);}
.dt-doc:first-child{border-top:0; padding-top:0;}
.dt-doc-l{display:flex; gap:10px; align-items:center;}
.dt-doc-l b{display:block; font-size:15px;}
.dt-doc-l small{color:var(--text-faint); font-size:12.5px; overflow-wrap:anywhere;}
.dt-doc-ic{flex:none; width:40px; height:46px; border-radius:6px 12px 6px 6px; background:var(--accent-soft); color:var(--accent-ink); display:grid; place-items:center;
  font-family:Oswald, sans-serif; font-weight:600; font-size:15px; border:1px solid #EAD97A;}
.dt-doc-act{display:flex; gap:6px; margin:10px 0 0 50px; flex-wrap:wrap;}
.dt-doc-act label{cursor:pointer;}
.dt-doc-etat{margin:10px 0 0 50px; display:flex; flex-direction:column; align-items:flex-start; gap:8px; font-size:13.5px; color:var(--text-muted);}
.dt-doc-etat .good{color:var(--good); font-weight:700;}
.dt-doc-etat .ct-btn{padding:8px 14px;}
.dt-versions{margin:8px 0 0 50px; font-size:13px;}
.dt-versions summary{cursor:pointer; color:var(--text-faint); font-weight:600;}
.dt-versions div{margin-top:4px;} .dt-versions small{color:var(--text-faint);}
.dt-bref .dt-side-body{display:flex; flex-direction:column; gap:4px;}
.dt-bref-l{display:grid; grid-template-columns:1fr auto; grid-template-rows:auto auto; column-gap:10px; text-align:left; border:0; background:none; padding:7px 8px; border-radius:10px; cursor:pointer; font:inherit; color:var(--text);}
.dt-bref-l:hover{background:var(--surface-2);}
.dt-bref-l span{font-weight:700; font-size:14px;}
.dt-bref-l b{grid-row:span 2; align-self:center; font-family:Oswald, sans-serif; font-weight:600; font-size:20px;}
.dt-bref-l b.warn{color:var(--warn);} .dt-bref-l b.crit{color:var(--crit);}
.dt-bref-l small{font-size:12.5px; color:var(--text-faint);}
.dt-bref-m{display:flex; gap:6px; flex-wrap:wrap; padding:8px 8px 2px; border-top:1px solid var(--border); margin-top:4px;}
.dt-bref-m button{display:inline-flex; align-items:center; gap:6px; border:1px solid var(--border); background:var(--surface); border-radius:99px; padding:3px 10px 3px 3px; font:inherit; font-size:12.5px; font-weight:600; color:var(--text-muted); cursor:pointer;}
.dt-bref-m button:hover{border-color:var(--accent);}

/* fenêtres (détail d'une date, envoi) */
.dt-overlay{position:fixed; inset:0; z-index:200; background:rgba(30,26,15,.42); backdrop-filter:blur(3px); display:flex; align-items:center; justify-content:center; padding:24px;}
.dt-overlay[hidden]{display:none;}
.dt-dialog{background:var(--surface); border-radius:18px; box-shadow:0 30px 80px -20px rgba(30,26,15,.5); width:min(1100px, 100%); max-height:calc(100vh - 48px); display:flex; flex-direction:column; overflow:hidden;}
.dt-dlg-head{display:flex; align-items:center; gap:14px; padding:16px 20px; border-bottom:1px solid var(--border); background:linear-gradient(180deg, #fff, var(--surface-2));}
.dt-dlg-id{flex:1; min-width:0;}
.dt-dlg-id h2{margin:0; font-size:21px; font-weight:700; overflow-wrap:anywhere;}
.dt-dlg-id p{margin:2px 0 0; color:var(--text-muted); font-size:14px;}
.dt-dlg-body{overflow:auto; padding:18px 20px; flex:1;}
.dt-dlg-grid{display:grid; grid-template-columns:1fr 1fr; gap:0 26px;}
.dt-dlg-col{min-width:0;}
.dt-fs{margin-bottom:22px; scroll-margin-top:10px;}
.dt-fs h3{display:flex; align-items:center; gap:10px; font-family:Oswald, sans-serif; font-weight:600; text-transform:uppercase; letter-spacing:.04em; font-size:13.5px; margin:0 0 10px; color:var(--text-muted);}
.dt-fs h3 small{font-family:Karla, sans-serif; letter-spacing:0; color:var(--text-faint);}
.dt-fs h3 .dt-lien{margin-left:auto; text-transform:none; font-family:Karla, sans-serif; letter-spacing:0;}
.dt-fgrid{display:grid; grid-template-columns:1fr 1fr; gap:10px 12px;}
.dt-f{display:flex; flex-direction:column; gap:4px; min-width:0;}
.dt-f > span:first-child{font-size:12.5px; font-weight:700; color:var(--text-muted);}
.dt-f input, .dt-f select, .dt-f textarea, .dt-fmb input, .dt-inl input{font:inherit; font-size:14.5px; border:1px solid var(--border); border-radius:9px; padding:7px 10px; background:var(--surface-2); color:var(--text); min-width:0; width:100%;}
.dt-f textarea{resize:vertical; line-height:1.45;}
.dt-f input:focus, .dt-f select:focus, .dt-f textarea:focus, .dt-fmb input:focus, .dt-inl input:focus{outline:none; box-shadow:var(--ring); border-color:var(--accent); background:#fff;}
.dt-f-full{grid-column:1 / -1; margin-top:10px;}
.dt-fp{margin:0; font-size:14px; color:var(--text-muted); line-height:1.5;}
.dt-fp a{color:var(--text); text-decoration:underline; text-decoration-color:var(--accent); text-decoration-thickness:2px; text-underline-offset:3px;}
.dt-fs .crit, .dt-fdoc .crit{color:var(--crit);} .dt-fs .good, .dt-fdoc .good{color:var(--good);} .dt-fdoc .warn{color:var(--warn);}
.dt-sugg{display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin-top:10px; font-size:13px; color:var(--text-muted);}
.dt-sugg-b{display:inline-flex; flex-direction:column; align-items:flex-start; border:1px solid var(--border); background:var(--accent-wash); border-radius:10px; padding:5px 10px; font:inherit; font-size:13px; font-weight:700; cursor:pointer; color:var(--text); text-align:left;}
.dt-sugg-b:hover{border-color:var(--accent);}
.dt-sugg-b small{font-weight:500; color:var(--text-muted);}
.dt-pdf{display:flex; gap:10px; align-items:center; min-height:34px; flex-wrap:wrap;}
.dt-pdf small{color:var(--text-faint);}
.dt-pdf label{cursor:pointer;}
.dt-inl{display:flex; gap:8px; align-items:center;}
.dt-inl input{width:auto; flex:1;}
.dt-tg{font:inherit; font-size:13.5px; font-weight:700; border-radius:9px; padding:7px 14px; cursor:pointer; border:1.5px dashed var(--border-strong); background:#fff; color:var(--text-muted); flex:none;}
.dt-tg.on{border:1.5px solid var(--good); background:var(--good-soft); color:var(--good-ink);}
.dt-factions{display:flex; gap:8px; flex-wrap:wrap; margin-top:14px;}
.dt-fdoc{display:grid; grid-template-columns:120px 1fr auto; gap:6px 10px; align-items:center; padding:9px 0; border-top:1px solid var(--border); font-size:13.5px;}
.dt-fdoc:first-of-type{border-top:0;}
.dt-fdoc-a{display:flex; gap:6px;}
.dt-fmb{display:grid; grid-template-columns:28px 70px 112px minmax(0, 1fr) auto; gap:8px; align-items:center; padding:7px 0; border-top:1px solid var(--border);}
.dt-fmb:first-of-type{border-top:0;}
.dt-fmb input{padding:5px 8px; font-size:13.5px;}
.dt-tl{list-style:none; margin:0; padding:0 0 0 14px; border-left:2px solid var(--border); font-size:13.5px;}
.dt-tl li{position:relative; padding:4px 0 8px 6px; display:flex; gap:10px;}
.dt-tl li::before{content:''; position:absolute; left:-20px; top:9px; width:10px; height:10px; border-radius:99px; background:var(--accent); border:2px solid #fff;}
.dt-tl time{flex:none; color:var(--text-faint); font-weight:700; font-variant-numeric:tabular-nums;}
.dt-tl span{color:var(--text-muted); overflow-wrap:anywhere;}
.dt-tl b{color:var(--text);}
.dt-hist summary{cursor:pointer; font-weight:700; color:var(--text-muted); font-size:13.5px;}
.dt-hist ul{list-style:none; margin:8px 0 0; padding:0; font-size:13px; color:var(--text-muted); max-height:220px; overflow:auto;}
.dt-hist li{padding:3px 0; border-top:1px dashed var(--border); overflow-wrap:anywhere;}
.dt-hist time{font-weight:700; color:var(--text-faint); margin-right:6px;}
.dt-hist small{color:var(--text-faint);}
.dt-dlg-foot{display:flex; align-items:center; gap:14px; padding:12px 20px; border-top:1px solid var(--border); background:var(--surface-2);}
.dt-f-etat{margin-right:auto; font-size:13px; font-weight:700; color:var(--good); opacity:0; transition:opacity .3s;}
.dt-f-etat.vu{opacity:1;}

/* fenêtre d'envoi */
.dt-cgrid{display:grid; grid-template-columns:minmax(0, 1fr) minmax(0, 1.15fr); gap:22px;}
.dt-cleft h4{margin:0 0 8px; font-size:12.5px; font-weight:800; letter-spacing:.05em; text-transform:uppercase; color:var(--text-faint);}
.dt-cdocs{display:flex; flex-direction:column; gap:6px; margin-bottom:18px;}
.dt-cdoc{display:flex; gap:10px; align-items:center; border:1px solid var(--border); border-radius:10px; padding:8px 12px; background:var(--surface-2); cursor:pointer;}
.dt-cdoc input{accent-color:#C9AE00; width:17px; height:17px;}
.dt-cdoc span{display:flex; flex-direction:column;}
.dt-cdoc b{font-size:14px;} .dt-cdoc small{font-size:12.5px; color:var(--text-faint); overflow-wrap:anywhere;}
.dt-cdoc.off{opacity:.55; cursor:default;}
.dt-cfile{border-style:dashed; border-color:var(--warn); background:var(--warn-soft);}
.dt-cdest{list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:6px; max-height:46vh; overflow:auto;}
.dt-cdest li{display:flex; align-items:center; gap:10px; border:1px solid var(--border); border-radius:10px; padding:8px 10px; background:var(--surface); opacity:.6;}
.dt-cdest li.on{opacity:1; border-color:var(--border-strong);}
.dt-cchk input{accent-color:#C9AE00; width:17px; height:17px;}
.dt-cd-id{flex:1; min-width:0; display:flex; flex-direction:column; gap:3px;}
.dt-cd-id b{font-size:14px;} .dt-cd-id small{font-size:12px; color:var(--text-faint);}
.dt-cd-id input{font:inherit; font-size:13.5px; border:1px solid var(--border); border-radius:7px; padding:4px 8px; background:var(--surface-2);}
.dt-cd-id input:focus{outline:none; box-shadow:var(--ring); background:#fff;}
.dt-cst{font-size:12.5px; font-weight:700; white-space:nowrap; color:var(--text-muted); max-width:150px; overflow-wrap:anywhere; white-space:normal; text-align:right;}
.dt-cst.good{color:var(--good);} .dt-cst.crit{color:var(--crit);}
.dt-cright{display:flex; flex-direction:column; gap:10px;}
.dt-cright .dt-f-full{margin-top:0;}
.dt-chint{margin:-4px 0 0; font-size:12.5px; color:var(--text-faint);}
.dt-chint code{background:var(--surface-3); border-radius:4px; padding:0 4px; color:var(--text-muted);}
.dt-csend{display:flex; justify-content:space-between; align-items:center; gap:12px; margin-top:4px;}
.dt-cstatus{margin:0; font-size:13.5px; font-weight:700; color:var(--text-muted); min-height:20px;}

@media (max-width:1240px){
  .dt-layout{grid-template-columns:minmax(0, 1fr) 310px;}
  .dt-steps{grid-template-columns:1fr;}
  .dt-sums{grid-template-columns:repeat(2, minmax(0, 1fr));}
}
@media (max-width:1000px){
  .dt-layout{grid-template-columns:1fr;}
  .dt-side{position:static; display:grid; grid-template-columns:1fr 1fr; gap:0 16px;}
  .dt-dlg-grid, .dt-cgrid{grid-template-columns:1fr;}
}
@media (max-width:760px){
  .dt-head{margin-bottom:12px;}
  .dt-views{flex-wrap:nowrap; overflow-x:auto; width:100%; padding-bottom:4px; scrollbar-width:none;}
  .dt-views::-webkit-scrollbar{display:none;}
  .dt-vue{flex:none; padding:6px 12px 6px 7px;}
  .dt-head-r{width:100%; justify-content:space-between;}
  .dt-side{grid-template-columns:1fr;}
  .dt-cards{grid-template-columns:1fr;}
  .dt-sums{grid-template-columns:1fr;}
  .dt-q{width:100%;}
  .dt-row{flex-wrap:wrap;}
  .dt-row-id{flex-basis:calc(100% - 60px);}
  .dt-fx .dt-fx-info{order:5; flex-basis:100%; padding-left:58px; white-space:normal;}
  .dt-fx .dt-fx-act{order:6; padding-left:58px; flex-wrap:wrap;}
  .dt-mrow .dt-cachet, .dt-drow .dt-cachet{margin-left:58px; min-width:0;}
  .dt-drow .dt-pill{min-width:0;}
  .dt-drow .dt-row-id{flex-basis:calc(100% - 160px);}
  .dt-drow .dt-avs{order:1;}
  .dt-drow .dt-cachet, .dt-drow .dt-pill{order:2;}
  .dt-mb-stats{width:100%;} .dt-mb-stats div{flex:1; min-width:0;}
  .dt-overlay{padding:0;}
  .dt-dialog{max-height:100vh; height:100%; border-radius:0;}
  .dt-fgrid{grid-template-columns:1fr;}
  .dt-fdoc{grid-template-columns:1fr; }
  .dt-fmb{grid-template-columns:28px 1fr auto; }
  .dt-fmb input, .dt-fmb > span:empty{grid-column:2 / -1;}
  .dt-fmb .dt-seg{grid-column:2 / -1; justify-self:start;}
}

/* ---- 26/10/2026 : dates d'un même organisateur regroupées, petite fenêtre « Cachet de X » ---- */
.dt-nb{display:inline-block; font-family:Karla, sans-serif; font-size:11.5px; font-weight:800; letter-spacing:.02em; text-transform:none; vertical-align:middle;
  background:var(--info-soft); color:var(--info-ink); border-radius:99px; padding:1px 8px; margin-left:4px;}
.dt-cals{display:flex; flex:none;}
.dt-cals .dt-cal + .dt-cal{margin-left:-30px; box-shadow:-3px 0 0 var(--surface), var(--shadow-sm);}
.dt-card-top .dt-cals .dt-cal.petit{width:52px;}
.dt-rows > .dt-grp + *, .dt-rows > * + .dt-grp{border-top:1px solid var(--border);}
.dt-grp-h u{text-decoration:none; color:var(--info); font-weight:600;}
.dt-grp.ouvert > .dt-grp-h{background:var(--accent-wash);}
.dt-grp-l{background:var(--surface-2); border-top:1px dashed var(--border-strong);}
.dt-grp-l .dt-row{padding-left:34px;}
.dt-grp-l .dt-row:first-child{border-top:0;}
.dt-card-g{border-color:#C9D9E8;}
.dt-gds{display:flex; flex-direction:column; border:1px solid var(--border); border-radius:12px; overflow:hidden;}
.dt-gd{display:flex; align-items:center; gap:10px; padding:7px 10px; cursor:pointer; border-top:1px solid var(--border); background:var(--surface);}
.dt-gd:first-child{border-top:0;}
.dt-gd:hover{background:var(--accent-wash);}
.dt-gd:focus-visible{outline:none; box-shadow:inset 0 0 0 3px rgba(226,196,0,.45);}
.dt-gd-t{flex:1; min-width:0; display:flex; flex-direction:column; line-height:1.3;}
.dt-gd-t b{font-size:14px; text-transform:capitalize;} .dt-gd-t small{font-size:12px; color:var(--text-faint);}
.dt-gd .dt-avs{margin-left:0;}
.dt-gd .dt-av{width:22px; height:22px; font-size:11.5px;}
.dt-fmb-v{grid-column:3 / -1; font:inherit; font-size:13.5px; border:1px solid var(--border); border-radius:9px; padding:5px 8px; background:var(--surface-2); color:var(--text); min-width:0;}
.dt-fmb-v:focus{outline:none; box-shadow:var(--ring); background:#fff;}
.dt-dialog.petit{width:min(580px, 100%);}
.dt-dialog.petit .dt-dlg-head .dt-av.xl{width:46px; height:46px; font-size:22px;}
.dt-astuce{display:flex; align-items:center; gap:10px 14px; flex-wrap:wrap; background:var(--accent-wash); border:1px solid #EAD97A; border-radius:12px; padding:10px 12px; margin-bottom:16px; font-size:14px; line-height:1.45;}
.dt-astuce span{flex:1; min-width:220px;}
.dt-astuce-l{display:inline-flex; align-items:center; gap:8px; align-self:flex-start; margin-top:5px; font-size:12.5px; font-weight:600; color:var(--warn-ink);
  background:var(--warn-soft); border-radius:99px; padding:2px 3px 2px 10px; max-width:100%; flex-wrap:wrap;}
.dt-astuce-l .dt-btn{padding:2px 9px; font-size:12px; border-radius:99px;}
.dt-p-autres{margin-top:20px;}
.dt-p-a{display:flex; align-items:center; gap:10px; padding:7px 0; border-top:1px solid var(--border); font-size:14px; flex-wrap:wrap;}
.dt-p-a:first-of-type{border-top:0;}
.dt-p-a b{min-width:70px;} .dt-p-a span:last-child{color:var(--text-muted);}
.dt-dialog .dt-fp .dt-seg{margin-left:6px; vertical-align:middle;}
@media (max-width:760px){
  .dt-dialog.petit{height:auto; max-height:100vh; border-radius:18px 18px 0 0; align-self:flex-end;}
  .dt-gd .dt-site-b{display:none;}
}

/* ---- 26/10/2026 : prestation (formule, ingé son, lighter…), alertes contact, agenda Google ---- */
.dt-alerte-b{border:1px dashed var(--warn); background:var(--warn-soft); color:var(--warn-ink); border-radius:99px; padding:4px 12px; font:inherit; font-size:13px; font-weight:700; cursor:pointer;}
.dt-alerte-b:hover{background:#F8DDB8;}
.dt-alerte{margin:0 0 14px; background:var(--warn-soft); color:var(--warn-ink); border:1px solid #EBC58E; border-radius:12px; padding:9px 12px; font-size:13.5px; line-height:1.45;}
.dt-fs .dt-alerte{margin:10px 0 0;}
.dt-chips{display:flex; flex-wrap:wrap; gap:6px;}
.dt-chip{display:inline-flex; align-items:center; border-radius:99px; padding:3px 10px; font:inherit; font-size:12.5px; font-weight:700; background:var(--surface-3); color:var(--text-muted); border:1px solid transparent;}
.dt-chip.good{background:var(--good-soft); color:var(--good-ink);}
.dt-chip.warn{background:var(--warn-soft); color:var(--warn-ink); border-color:#EBC58E; cursor:pointer;}
button.dt-chip.warn:hover{background:#F8DDB8;}
.dt-ag{border:1px solid var(--border); background:var(--surface); color:var(--text-faint); border-radius:99px; padding:2px 9px; font:inherit; font-size:12px; font-weight:700; cursor:pointer; text-decoration:none; white-space:nowrap;}
.dt-ag:hover{border-color:var(--accent); color:var(--text);}
.dt-ag.on{background:var(--info-soft); color:var(--info-ink); border-color:transparent;}
.dt-card-foot .dt-ag{margin-left:auto;}
.dt-card-foot .dt-ag + .dt-avs{margin-left:6px;}
.dt-opt{display:grid; grid-template-columns:110px auto minmax(0, 1fr); gap:8px 10px; align-items:center; padding:8px 0; border-top:1px solid var(--border);}
#dt-f-presta > label.dt-f{margin-bottom:6px;}
.dt-opt b{font-size:13.5px;}
.dt-opt input{font:inherit; font-size:13.5px; border:1px solid var(--border); border-radius:9px; padding:6px 9px; background:var(--surface-2); color:var(--text); min-width:0;}
.dt-opt input:focus{outline:none; box-shadow:var(--ring); background:#fff;}
.dt-fgrid-4{grid-template-columns:repeat(4, minmax(0, 1fr)); margin-top:10px;}
@media (max-width:760px){
  .dt-opt{grid-template-columns:1fr auto;}
  .dt-opt input, .dt-opt > span:last-child{grid-column:1 / -1;}
  .dt-fgrid-4{grid-template-columns:1fr 1fr;}
}
/* « Pas sur le site · publier » (26/10/2026) : le badge devient un bouton */
button.dt-site-b{border:0; font:inherit; font-size:12px; font-weight:700; cursor:pointer;}
button.dt-site-b.off:hover{background:var(--accent-soft); color:var(--accent-ink);}
.dt-fp small{color:var(--text-faint);}
.dt-card{cursor:pointer;}
/* date de parution sur le site (26/10/2026) */
.dt-site-b.plan{background:var(--info-soft); color:var(--info-ink);}
button.dt-site-b.plan:hover{background:#cfe0ee;}
.dt-par{display:flex; align-items:center; gap:8px 10px; flex-wrap:wrap; margin:10px 0 2px;}
.dt-par-l{font-size:12.5px; font-weight:700; color:var(--text-muted);}
.dt-par input{font:inherit; font-size:13.5px; border:1px solid var(--border); border-radius:9px; padding:5px 8px; background:var(--surface-2); color:var(--text);}
.dt-par input:focus{outline:none; box-shadow:var(--ring); background:#fff;}

/* 30/10/2026 : contrat de cession, 4e étape des cartes (2 × 2) et section de la fenêtre d'une date */
.dt-steps.n4{grid-template-columns:repeat(2, minmax(0, 1fr));}
.dt-ct-gap{margin-top:10px;}
@media (max-width:1240px){
  .dt-steps.n4{grid-template-columns:1fr;}
}

/* fenêtre « Facture » (02/11/2026) : client, lignes, numéro, mentions, puis « Générer et voir » */
.dt-f-2{grid-column:1 / -1;}
.dt-f > span:first-child small{font-weight:500; color:var(--text-faint);}
.dt-fa-q{display:flex; gap:8px; margin-top:10px;}
.dt-fa-q input{flex:1; min-width:0; font:inherit; font-size:14px; border:1px dashed var(--border-strong); border-radius:9px; padding:7px 10px; background:#fff; color:var(--text);}
.dt-fa-q input:focus{outline:none; box-shadow:var(--ring); border-color:var(--accent); border-style:solid;}
.dt-fa-q .ct-btn{flex:none;}
.dt-fa-res{display:flex; flex-direction:column; gap:6px; margin:10px 0 8px;}
.dt-fa-res .dt-sugg-b{width:100%;}
.dt-fa-lignes{display:flex; flex-direction:column; gap:6px;}
.dt-fa-sec{margin-top:4px; padding-top:16px; border-top:1px solid var(--border);}
.dt-fa-l{display:grid; grid-template-columns:minmax(0, 1fr) 64px 120px 110px 22px; gap:6px; align-items:center;}
.dt-fa-l input{font:inherit; font-size:14px; border:1px solid var(--border); border-radius:9px; padding:7px 9px; background:var(--surface-2); color:var(--text); min-width:0; width:100%;}
.dt-fa-l input:focus{outline:none; box-shadow:var(--ring); border-color:var(--accent); background:#fff;}
.dt-fa-l input[inputmode]{text-align:right; font-variant-numeric:tabular-nums;}
.dt-fa-l > b{text-align:right; font-size:14px; font-variant-numeric:tabular-nums; white-space:nowrap;}
.dt-fa-l .dt-lien{padding:0; text-decoration:none; color:var(--text-faint);}
.dt-fa-l .dt-lien:hover{color:var(--crit);}
.dt-fa-th{font-size:12.5px; font-weight:700; color:var(--text-muted);}
.dt-fa-th span:nth-child(n+2){text-align:right;}
.dt-fa-tot{display:flex; justify-content:space-between; align-items:center; gap:10px; margin:10px 0; padding:10px 12px; background:var(--accent-wash); border:1px solid #EAD97A; border-radius:10px; font-weight:700;}
.dt-fa-tot b{font-family:Oswald, sans-serif; font-size:20px; margin-left:8px; font-variant-numeric:tabular-nums;}
.dt-fa-cb{display:flex; gap:9px; align-items:center; margin:14px 0 8px; font-weight:700; font-size:14px; cursor:pointer;}
.dt-fa-cb input{width:17px; height:17px; margin:0; accent-color:#C9A800;}
.dt-fa-pied{margin-right:auto; font-size:13px; color:var(--text-muted); line-height:1.4;}
#dt-fa-num .dt-alerte{margin:10px 0 0;}
.dt-pdf > .dt-lien{max-width:100%; overflow-wrap:anywhere; text-align:left;}   /* Facture_Lemon_Punch_<lieu>_<date>.pdf sans espace */
@media (max-width:760px){
  .dt-fa-l{grid-template-columns:minmax(0, 1fr) 46px 80px 20px;}
  .dt-fa-l > b, .dt-fa-th span:nth-child(4){display:none;}
  .dt-fa-q{flex-direction:column;}
  .dt-dlg-foot .dt-fa-pied{display:none;}
}

/* fenêtre d'une date en onglets (02/11/2026) : Concert, Documents, Paiement, Historique */
.dt-dialog:has(> .dt-tabs){height:min(860px, calc(100vh - 48px));}   /* même taille d'un onglet à l'autre */
.dt-tabs{display:flex; gap:2px; padding:0 14px; border-bottom:1px solid var(--border); background:var(--surface-2); overflow-x:auto; scrollbar-width:none; flex:none;}
.dt-tabs::-webkit-scrollbar{display:none;}
.dt-tab{display:inline-flex; align-items:center; gap:7px; font:inherit; font-size:14.5px; font-weight:700; color:var(--text-muted); background:none; border:0; border-bottom:3px solid transparent; padding:11px 12px 9px; cursor:pointer; white-space:nowrap;}
.dt-tab:hover{color:var(--text);}
.dt-tab[aria-selected="true"]{color:var(--text); border-bottom-color:var(--accent);}
.dt-tab:focus-visible{outline:none; box-shadow:var(--ring); border-radius:8px 8px 0 0;}
.dt-tab-n{font-size:11.5px; font-weight:800; line-height:1; border-radius:99px; padding:3px 7px; background:var(--surface-3); color:var(--text-muted);}
.dt-tab-n.warn{background:var(--warn-soft); color:var(--warn-ink);} .dt-tab-n.good{background:var(--good-soft); color:var(--good-ink);}
/* Documents : une ligne par document, colonnes fixes (n°, document, statut, détail, actions) alignées d'une ligne à l'autre */
.dt-dcs-intro{margin-bottom:12px;}
.dt-dc{display:grid; grid-template-columns:28px 150px 140px minmax(0, 1fr) 290px; gap:6px 14px; align-items:center; padding:12px 16px; border:1px solid var(--border); border-radius:14px; background:var(--surface); scroll-margin-top:10px;}
.dt-dc + .dt-dc{margin-top:8px;}
.dt-dc-n{width:28px; height:28px; border-radius:99px; display:inline-flex; align-items:center; justify-content:center; font-size:13px; font-weight:800; background:var(--surface-3); color:var(--text-muted);}
.dt-dc-n.ok{background:var(--good-soft); color:var(--good-ink);}
.dt-dc-t{font-size:15px; line-height:1.25;}
.dt-dc .dt-dc-p{justify-self:stretch; text-align:center; overflow:hidden; text-overflow:ellipsis;}
.dt-dc-s{font-size:13px; line-height:1.4; color:var(--text-muted); overflow-wrap:anywhere; min-width:0;}
.dt-dc-a{display:flex; gap:6px; justify-content:flex-end;}
.dt-dc-a label.dt-btn{cursor:pointer;}
.dt-dc-plus{grid-column:2 / -1; margin-top:8px; padding-top:12px; border-top:1px dashed var(--border);}
.dt-fgrid-3{grid-template-columns:repeat(3, minmax(0, 1fr));}
.dt-dc-opts{display:flex; flex-wrap:wrap; align-items:center; gap:10px 18px; margin-top:12px; font-size:13.5px;}
.dt-dc-opts .dt-inl > span{font-weight:700; color:var(--text-muted); font-size:12.5px;}
.dt-dc-opts label{cursor:pointer;}
.dt-dcs-tout{display:flex; align-items:center; gap:12px; flex-wrap:wrap; margin-top:16px;}
/* Historique : envois et modifications en colonnes */
.dt-hl{font-size:13.5px;}
.dt-hl-r{display:grid; grid-template-columns:82px 150px minmax(0, 1fr) 70px; gap:10px; align-items:baseline; padding:7px 0; border-top:1px solid var(--border);}
.dt-hl-r:first-child{border-top:0;}
.dt-hl-r time{color:var(--text-faint); font-weight:700; font-variant-numeric:tabular-nums;}
.dt-hl-r span{color:var(--text-muted); overflow-wrap:anywhere; min-width:0;}
.dt-hl-q{text-align:right;}
.dt-hl-m .dt-hl-r{grid-template-columns:96px minmax(0, 1fr) auto; font-size:13px;}
.dt-hl-m small{color:var(--text-faint);}
@media (max-width:1000px){
  .dt-dc{grid-template-columns:28px 140px 140px minmax(0, 1fr);}
  .dt-dc-a{grid-column:2 / -1; justify-content:flex-start; flex-wrap:wrap;}
}
@media (max-width:760px){
  .dt-dc{grid-template-columns:28px minmax(0, 1fr) auto; padding:12px;}
  .dt-dc-s, .dt-dc-a{grid-column:2 / -1;}
  .dt-dc-plus{grid-column:1 / -1;}
  .dt-fgrid-3{grid-template-columns:1fr 1fr;}
  .dt-tabs{padding:0 6px;}
  .dt-tab{padding:10px 9px 8px; font-size:14px;}
  .dt-hl-r{grid-template-columns:72px minmax(0, 1fr) auto;}
  .dt-hl-r > span:not(.dt-hl-q){grid-column:2 / -1;}
  .dt-hl-q{grid-column:3; grid-row:1;}
  .dt-hl-m .dt-hl-r{grid-template-columns:86px minmax(0, 1fr);}
  .dt-hl-m small{grid-column:2;}
}
