.modal-overlay{z-index:var(--z-modale);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:overlay-in var(--t-court) ease-out;background:#04070f8c;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0;overflow-y:auto}@keyframes overlay-in{0%{opacity:0}}.modal{background:var(--panel);border:1px solid var(--border-2);width:100%;max-width:460px;max-height:calc(100dvh - 40px);box-shadow:var(--shadow);animation:modal-in var(--t-court) var(--ease-out);border-radius:16px;flex-direction:column;display:flex}@keyframes modal-in{0%{opacity:0;transform:translateY(14px)scale(.97)}}.modal-head{border-bottom:1px solid var(--border);flex:none;justify-content:space-between;align-items:center;padding:16px 18px;display:flex}.modal-title{font-family:var(--font-titre);letter-spacing:-.015em;color:var(--text);font-size:20px;font-weight:800}.modal-close{background:var(--card);border:1px solid var(--border-2);color:var(--text-muted);cursor:pointer;border-radius:8px;justify-content:center;align-items:center;width:30px;height:30px;font-size:13px;display:inline-flex}@media (hover:hover){.modal-close:hover{color:var(--text);border-color:var(--border-3)}}.modal-body{flex:auto;padding:18px;overflow-y:auto}.modal-guard{border-top:1px solid var(--danger-bd);background:var(--danger-bg);animation:guard-in var(--t-court) var(--ease-out);z-index:2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-radius:0 0 15px 15px;flex-wrap:wrap;flex:none;align-items:center;gap:10px;padding:12px 18px;display:flex}@keyframes guard-in{0%{opacity:0;transform:translateY(6px)}}.modal-guard-msg{min-width:140px;color:var(--text);flex:auto;font-size:13.5px;font-weight:600}.modal-guard-drop{margin-right:0}.form-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:12px;display:grid}.field{flex-direction:column;gap:5px;min-width:0;display:flex}.field.full,.form-grid>.full{grid-column:1/-1}.field-row2{grid-template-columns:1fr 1fr;gap:8px;display:grid}.field>span{letter-spacing:.5px;text-transform:uppercase;color:var(--text-dim);font-size:11px}.field-hint{text-transform:none;letter-spacing:0;opacity:.8;font-weight:400}.field-aide{color:var(--text-dim);text-transform:none;letter-spacing:0;font-size:11.5px;line-height:1.45}.field input,.field select{background:var(--inset);color:var(--text);border:1px solid var(--border-3);font-size:14px;font-family:var(--font-body);border-radius:8px;width:100%;padding:9px 11px}.field input:focus,.field select:focus{border-color:var(--gold);outline:none}.field-check{color:var(--text-2);cursor:pointer;align-items:center;gap:8px;font-size:13.5px;display:flex}.field-check input{accent-color:var(--gold)}.form-actions{justify-content:flex-end;gap:10px;margin-top:18px;display:flex}.btn{cursor:pointer;font-size:14px;font-weight:600;font-family:var(--font-body);border:1px solid #0000;border-radius:9px;padding:9px 16px}.btn-ghost{border-color:var(--border-3);color:var(--text-2);background:0 0}@media (hover:hover){.btn-ghost:hover{border-color:var(--text-dim)}}.btn-primary{background:var(--gold);color:#1a1408}@media (hover:hover){.btn-primary:hover{background:var(--gold-bright)}}.btn-danger{border-color:var(--danger-bd);color:var(--danger-accent);background:0 0;margin-right:auto}@media (hover:hover){.btn-danger:hover{background:var(--danger-bg)}}.days-row{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.day-toggle{cursor:pointer;border:1px solid var(--border-3);width:30px;height:30px;color:var(--text-2);font-family:var(--font-body);transition:border-color var(--t-instant), background var(--t-instant), color var(--t-instant);background:0 0;border-radius:8px;font-size:12.5px;font-weight:600}@media (hover:hover){.day-toggle:hover{border-color:var(--gold);color:var(--gold-bright)}}.day-toggle.off{color:#e05252;background:#e0525226;border-color:#e05252}.days-hint{color:var(--text-dim);margin-left:4px;font-size:11.5px}.notes-area{resize:vertical;background:var(--inset);width:100%;min-height:62px;color:var(--text);border:1px solid var(--border-3);font-family:var(--font-body);border-radius:8px;padding:8px 10px;font-size:13.5px;line-height:1.5}.notes-area:focus{border-color:var(--gold);outline:none}@media (width<=900px){.btn{min-height:44px}.day-toggle,.modal-close{width:44px;height:44px}}.champ-erreur,.field>span.champ-erreur{color:var(--etat-probleme);text-transform:none;letter-spacing:0;font-size:11.5px;line-height:1.4}.field [aria-invalid=true],.field-check [aria-invalid=true]{border-color:var(--etat-probleme)}
