
#discipline-filter{width:100%;min-width:0}.select-row:has(#discipline-filter){display:block}
.discipline-summary{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;border:1px solid #d7cfe3;border-radius:12px;background:#fff;margin-top:7px;padding:12px 13px;color:#382651;font:inherit;font-size:14px;font-weight:600;min-height:44px;text-align:left;cursor:pointer}.discipline-chevron{font-size:19px}
.discipline-dialog{position:fixed;top:6vh;bottom:auto;right:auto;margin:0;width:520px;max-width:calc(100vw - 24px);max-height:88vh;box-sizing:border-box;border:1px solid #e3daef;border-radius:20px;background:#fff;padding:24px;color:#382651;box-shadow:0 18px 65px #25113b40;overflow:auto;font:inherit}.discipline-dialog::backdrop{background:#20102e20}
.discipline-dialog-heading{display:flex;align-items:center;justify-content:space-between;gap:14px}.discipline-dialog h2{margin:0;font-size:20px}.discipline-close{border:1px solid #e3daef;border-radius:50%;background:white;color:#655374;width:32px;height:32px;font-size:22px;cursor:pointer;flex:none}
.discipline-help{font-size:12px;line-height:1.5;color:#796c87;margin:10px 0 16px}.discipline-search{width:100%;box-sizing:border-box;padding:10px 12px;border:1px solid #d7cfe3;border-radius:10px;font:inherit;font-size:13px}
.discipline-toolbar{display:flex;gap:20px;padding:13px 0 17px}.discipline-toolbar button{border:0;background:none;padding:0;color:#6138ad;font:inherit;font-size:12px;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.discipline-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:12px;align-items:start}.discipline-family{border:1px solid #eee8f4;border-radius:13px;padding:12px;background:#fcfbfe;min-width:0}.discipline-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:9px}.discipline-pills:empty{display:none}
.discipline-pill{border:1px solid #ded5e9;background:#f4f0f8;color:#897696;border-radius:18px;padding:7px 10px;font:inherit;font-size:12px;line-height:1.35;text-align:left;cursor:pointer;max-width:100%;overflow-wrap:anywhere;transition:background .12s,color .12s}.discipline-family-title{margin:0 0 9px;font-size:14px;line-height:1.3;font-weight:750;color:#241b2b}.discipline-family-pill{font-weight:750;font-size:13px}.discipline-family-pill[aria-pressed=true]{background:#442365;border-color:#442365}.discipline-pill[aria-pressed=true]{background:#654092;border-color:#654092;color:white}.discipline-pill[aria-pressed=mixed]{background:repeating-linear-gradient(135deg,#f0e8f7,#f0e8f7 5px,#ddcdece0 5px,#ddcdece0 9px);border-color:#b99ad2;color:#563478}.discipline-pill:hover{border-color:#795399;box-shadow:0 0 0 1px #79539955}
.discipline-footer{display:flex;justify-content:flex-end;position:sticky;bottom:-24px;background:#fffffff5;padding:14px 0 0;margin-top:14px}.discipline-done{border:0;border-radius:20px;background:#382651;color:white;padding:10px 22px;font:inherit;font-size:13px;cursor:pointer}.discipline-empty{font-size:13px;color:#796c87;grid-column:1/-1}
.discipline-dialog [hidden]{display:none!important}.discipline-dialog :focus-visible,#discipline-filter :focus-visible{outline:2px solid #8c65b1;outline-offset:3px}
@media(max-width:600px){.discipline-dialog{padding:17px;top:3vh;max-height:94vh}.discipline-grid{grid-template-columns:1fr}.discipline-footer{bottom:-17px}}

.discipline-dialog .discipline-family-pill[aria-pressed=true]{background:#442365;border-color:#442365}

/* Familles compactes; un seul encart sous la rangée ouverte. */
.discipline-grid{display:flex;flex-wrap:wrap;align-items:flex-start;gap:9px 7px;position:relative}
.discipline-family{display:inline-flex;align-items:stretch;padding:0;border:0;border-radius:20px;background:none;max-width:100%;min-width:0}
.discipline-family .discipline-family-pill{border-radius:20px;font-size:12px;padding:8px 11px}
.discipline-family:has(.discipline-expand) .discipline-family-pill{border-radius:20px 0 0 20px;border-right:0}
.discipline-expand{flex:none;width:31px;border:1px solid #ded5e9;border-left:1px solid #ffffff40;border-radius:0 20px 20px 0;background:#442365;color:white;font:inherit;font-size:17px;cursor:pointer}
.discipline-family:has([aria-pressed=false]) .discipline-expand{background:#f4f0f8;border-color:#ded5e9;color:#897696}
.discipline-family:has([aria-pressed=mixed]) .discipline-expand{background:#e7daf1;border-color:#b99ad2;color:#563478}
.discipline-expand:hover{filter:brightness(.9)}.discipline-family.is-expanded{box-shadow:0 0 0 2px #bfa9d3;outline:2px solid white;outline-offset:-2px}
.discipline-detail{flex:0 0 100%;box-sizing:border-box;border:1px solid #dfd2eb;border-radius:13px;background:#f8f5fc;padding:15px;margin:2px 0 5px}
.discipline-detail-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.discipline-detail .discipline-family-title{margin:0}.discipline-collapse{border:0;background:none;color:#6c5287;font:inherit;font-size:11px;cursor:pointer;padding:4px}
.discipline-detail .discipline-pills{margin-top:12px}.discipline-empty{flex-basis:100%}

.discipline-detail .discipline-family-title{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.discipline-detail-heading{justify-content:flex-end}

/* Encart ajusté aux pastilles, sans en-tête redondant. */
.discipline-detail-heading{display:none}
.discipline-detail{border:0;background:none;padding:0;margin:0 0 3px}
.discipline-detail .discipline-pills{display:flex;width:fit-content;max-width:100%;box-sizing:border-box;margin:0;padding:10px;gap:6px;border:1px solid #dfd2eb;border-radius:13px;background:#f8f5fc}

/* Regroupement des centres d’intérêt, avec les mêmes boutons de sélection. */
.interest-group{margin-top:20px}.interest-group+.interest-group{border-top:1px solid #89949b55;padding-top:20px}.interest-group-title{margin:0;font-size:15px;font-weight:750;color:inherit}.interest-group .discipline-toolbar{flex-wrap:wrap;gap:10px 20px}

/* Accès directs à côté du logo, lorsque les filtres sont repliés. */
.map-quick-filters{display:none;position:absolute;top:18px;left:102px;z-index:500;flex-direction:column;align-items:flex-start;gap:6px}
.filters-collapsed .map-quick-filters{display:flex}
.map-quick-filters button{min-height:31px;padding:5px 12px;border:1px solid #b9bec3;border-radius:16px;background:#fff;color:#333b42;font:600 12px/1.4 system-ui;cursor:pointer;box-shadow:inset 0 1px 0 #ffffff90,inset 0 -2px 2px #00000012}
.map-quick-filters button[aria-pressed=true]{background:#53616c;color:#fff;border-color:#53616c}
.map-quick-filters button:focus-visible{outline:2px solid #00a6ff;outline-offset:3px}
.map-quick-filters button:disabled{opacity:.4;cursor:default}
.culture-dark .map-quick-filters button{background:#171717;color:#eee;border-color:#555}
.culture-dark .map-quick-filters button[aria-pressed=true]{background:#53616c;border-color:#7d8b96}
@media(max-width:720px){.map-quick-filters{top:12px;left:84px;gap:4px}.map-quick-filters button{min-height:27px;padding:3px 9px;font-size:11px}}

.discipline-clear{flex:none;border:1px solid #bac1c7;border-radius:16px;padding:7px 11px;background:#fff;color:#414d57;font:500 12px/1.3 system-ui;cursor:pointer}
.discipline-clear:hover{background:#edf0f2;border-color:#7d8993}
.culture-dark .discipline-clear{background:#25292d;color:#eee;border-color:#606a72}
.culture-dark .discipline-clear:hover{background:#39434b}
@media(max-width:600px){.discipline-dialog-heading{flex-wrap:wrap;gap:10px}.discipline-clear{margin-left:auto}}

.map-quick-date{display:flex;align-items:center;gap:6px}
.map-quick-filters button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;height:32px;padding:0 12px;line-height:1}
.map-quick-filters .map-quick-calendar{width:32px;padding:0;border-radius:50%;flex:none}
.map-quick-calendar svg{display:block;width:18px;height:18px}
@media(max-width:720px){.map-quick-filters button{height:28px;padding:0 9px}.map-quick-filters .map-quick-calendar{width:28px;padding:0}}

.map-intro-running .map-date-status{visibility:hidden}
.map-date-status{position:absolute;top:100%;left:-84px;width:320px;max-width:calc(100vw - 36px);margin:10px 0 0;color:#111;font:700 13px/1.45 system-ui;text-shadow:0 0 3px #fff,0 1px 2px #fff,0 -1px 2px #fff;overflow-wrap:anywhere;pointer-events:none}
.culture-dark .map-date-status{color:#fff;text-shadow:0 0 4px #000,0 1px 3px #000,0 -1px 2px #000}
@media(max-width:720px){.map-date-status{left:-72px;width:280px;max-width:calc(100vw - 24px);margin-top:9px;font-size:12px}}

/* Les deux rangées de raccourcis partagent le même bord droit. */
.map-quick-filters{align-items:stretch}
.map-quick-date>button:first-child{flex:1}

#discipline-dialog>.interest-group:first-of-type{margin-top:0}
.interest-group-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}
#discipline-dialog .discipline-clear{border:0;border-radius:0;padding:0;background:none;box-shadow:none;color:inherit;font:500 12px/1.4 system-ui;text-decoration:none;white-space:nowrap}
#discipline-dialog .discipline-clear:hover{text-decoration:underline;text-underline-offset:3px;background:none}
#discipline-dialog .discipline-clear:focus-visible{outline:2px solid #20b8ff;outline-offset:4px}

/* Fenêtre ancrée sous le raccourci, sans bloquer son bouton. */
#discipline-dialog{z-index:1200}

/* Même accent de survol que les types de lieux et les territoires. */
#discipline-dialog .discipline-pill:is(:hover,:focus-visible){border-color:#2989be;box-shadow:inset 0 0 0 1px #2989be!important}
#discipline-dialog .discipline-pill[aria-pressed=false]:is(:hover,:focus-visible){background:#e2f2fc;color:#174d70}
.culture-dark #discipline-dialog .discipline-pill:is(:hover,:focus-visible){border-color:#8acff5;box-shadow:inset 0 0 0 1px #8acff5!important}
.culture-dark #discipline-dialog .discipline-pill[aria-pressed=false]:is(:hover,:focus-visible){background:#284b61;color:#e4f5ff}
#discipline-dialog .discipline-pill[aria-pressed=true]:is(:hover,:focus-visible){box-shadow:inset 0 0 0 2px #b6e6ff!important}

