
:root{font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#17212d;background:#f3f5f8;font-size:14px;font-synthesis:none}
*{box-sizing:border-box}body{margin:0}a{color:#265c9a;text-decoration:none}a:hover{text-decoration:underline}
.shell{display:flex;min-height:100vh}.sidebar{position:sticky;top:0;height:100vh;width:232px;flex:0 0 232px;background:#151d29;color:#cbd3df;display:flex;flex-direction:column;padding:23px 13px 15px}
.sidebar-brand{display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:5px 15px 28px;color:#fff}.sidebar-brand img{width:142px;height:99px;object-fit:contain;object-position:left center}.sidebar-brand span{letter-spacing:.2em;font-size:10px;font-weight:700;color:#9eafc3}
.nav-caption{padding:11px 14px;color:#78879a;font-size:10px;font-weight:750;letter-spacing:.13em}.nav-sub{margin-top:22px}
.side-nav{display:flex;flex-direction:column;gap:3px}.side-nav a,.side-bottom a,.nav-disabled{display:block;padding:11px 14px;border-radius:7px;font-weight:570;color:#b9c6d7}.side-nav a:hover,.side-bottom a:hover{background:#253246;color:white;text-decoration:none}.side-nav a.active,.side-bottom a.active{background:#34465f;color:#fff}.nav-disabled{color:#758399;cursor:default;font-weight:450}.side-bottom{margin-top:auto;border-top:1px solid #344052;padding-top:12px}
.workspace{min-width:0;flex:1}.topbar{height:64px;background:#fff;border-bottom:1px solid #e2e6ed;display:flex;align-items:center;justify-content:space-between;padding:0 34px;gap:12px}.topbar-context{font-size:13px;color:#687589}.topbar-context span{padding:0 8px;color:#b1bac6}.topbar-right{display:flex;align-items:center;gap:18px}.user-pill{font-size:12px;font-weight:650;color:#354358}.top-logout{background:transparent;border:1px solid #dce2ea;color:#526176;padding:8px 11px;font-weight:550}
.content{max-width:1480px;padding:32px 36px 80px;margin:0 auto}.page-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:24px}.eyebrow{font-size:10px;letter-spacing:.14em;color:#8290a3;font-weight:750;margin-bottom:6px}
h1{font-size:27px;letter-spacing:-.045em;font-weight:710;margin:0}h2{font-size:16px;letter-spacing:-.015em;margin:0 0 19px;font-weight:700}
.panel{display:block;background:#fff;border:1px solid #e0e5ec;border-radius:10px;padding:24px;margin-bottom:20px;box-shadow:0 1px 2px #1e293b06}
.fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.wide{grid-column:1/-1}
label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:650;color:#475569}
input,select,textarea{font:inherit;color:#182435;border:1px solid #d5dce6;background:#fff;border-radius:6px;padding:10px 11px;min-width:0;outline:none}
input:focus,select:focus,textarea:focus{border-color:#6786b2;box-shadow:0 0 0 3px #9eb7dc35}
textarea{min-height:90px;resize:vertical}
button{font:inherit;font-weight:650;cursor:pointer;border:0;border-radius:6px;background:#273c57;color:white;padding:10px 16px}button:hover{filter:brightness(1.1)}button.ghost{background:#eef2f7;color:#344861}
form button{align-self:end}.stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:20px}.stats .panel{margin:0;min-height:126px;padding:22px}.stats strong{font-size:36px;display:block;letter-spacing:-.05em;color:#1c2b40}.stats span,.muted{color:#728095}.roadmap-note{font-size:12px}
.inline{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.list-heading{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:14px}.list-heading h2{margin:0}.table-search{width:270px;max-width:100%}
.table-wrap{overflow:auto}table{border-collapse:collapse;width:100%;text-align:left}th{background:#f6f8fb;color:#637287;font-size:11px;letter-spacing:.025em;font-weight:700}td,th{padding:12px 14px;border-bottom:1px solid #e8edf2}tr:hover td{background:#f8fafc}tr[hidden]{display:none}
.error{background:#fff0f0;color:#922;padding:12px;border:1px solid #f5caca;border-radius:7px}.userline{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 0;border-bottom:1px solid #e8edf2;flex-wrap:wrap}.userline small{color:#6e7e90}
.auth-head{max-width:480px;margin:8vh auto 0;display:flex;align-items:center;gap:18px}.auth-head img{width:140px;height:100px;object-fit:contain}.auth-head span{font-size:12px;letter-spacing:.16em;font-weight:800}.auth-main{max-width:480px;margin:10px auto;padding:0 16px}.auth-main h1{margin:0 0 24px}.auth-main .panel{padding:30px}.auth-main label{margin-bottom:17px}.auth-main button{width:100%}
@media(max-width:1050px){.fields{grid-template-columns:repeat(2,minmax(0,1fr))}.sidebar{width:195px;flex-basis:195px}.content{padding:25px}}
@media(max-width:700px){.shell{display:block}.sidebar{position:static;width:100%;height:auto;padding:8px 12px;display:block}.sidebar-brand{padding:6px 8px;flex-direction:row;align-items:center}.sidebar-brand img{width:86px;height:50px}.nav-caption,.nav-disabled,.nav-sub,.side-bottom{display:none!important}.side-nav{flex-direction:row;overflow:auto}.side-nav a{white-space:nowrap;padding:9px}.topbar{height:auto;padding:12px 16px}.content{padding:22px 14px}.fields,.stats{grid-template-columns:1fr}.panel{padding:17px}.list-heading{align-items:stretch;flex-direction:column}.table-search{width:100%}}

.content{padding-top:24px}.page-heading{margin-bottom:16px}.panel{padding:18px 20px;margin-bottom:14px}.list-heading{margin-bottom:10px}.list-actions{display:flex;gap:12px;align-items:center}.new-entry{background:#273c57;color:#fff;padding:9px 12px;border-radius:6px;font-weight:650;font-size:12px;white-space:nowrap}td,th{padding:9px 12px}.compact-editor{margin-top:14px}.compact-editor[hidden]{display:none!important}@media(max-width:700px){.list-actions{width:100%;flex-wrap:wrap}.list-actions .table-search{flex:1;min-width:180px}.content{padding-top:18px}}

.module-editor{margin:0 0 16px;border:1px solid #dce3ed;border-radius:9px;overflow:hidden;background:#fff}
.module-editor>summary{cursor:pointer;list-style:none;padding:12px 18px;font-weight:650;color:#263e5a;background:#f7f9fc}
.module-editor>summary::-webkit-details-marker{display:none}.module-editor>summary:after{content:'+';float:right}.module-editor[open]>summary:after{content:'−'}
.module-editor>.panel{border:0;border-top:1px solid #e4eaf1;border-radius:0;margin:0;box-shadow:none}
.timeline-entry{border-left:2px solid #bdcbe0;padding:2px 0 9px 15px;margin:12px 0}.timeline-entry p{margin:7px 0;white-space:normal}
.subform{margin-top:20px;padding-top:16px;border-top:1px solid #e4eaf1}.member-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 18px}
.member-check{display:block;background:#f7f9fc;padding:11px;border:1px solid #e4eaf1;border-radius:7px;font-weight:550}.member-check input{margin-right:7px}.member-check small{display:block;margin-left:23px;color:#7b8797}
@media(max-width:700px){.member-grid{grid-template-columns:1fr}}

/* Navigation structurée par fonction, v1.5 */
.side-nav{gap:0}.nav-group{padding:0 0 13px;margin-bottom:7px;border-bottom:1px solid #2b3647}
.nav-group:last-child{border-bottom:0}.nav-group .nav-caption{padding:12px 14px 7px;color:#8797ab;font-size:10px;letter-spacing:.12em}
.nav-group .nav-disabled{display:flex;justify-content:space-between;align-items:center;gap:7px}
.nav-disabled small{font-size:10px;color:#8996a7;font-weight:450}
.side-nav a.active{box-shadow:inset 3px 0 #a9bed7}
@media(max-width:700px){
 .side-nav{display:flex;flex-wrap:wrap;gap:6px}
 .nav-group{display:flex;align-items:center;flex-wrap:wrap;padding:0;margin:0;border:0}
 .nav-group .nav-caption{display:none}
 .nav-group .nav-disabled{display:none}
}

.dashboard-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.dashboard-grid .panel{min-width:0}.empty-note{color:#738196;font-size:13px;padding:15px 0;margin:0}.summary-cell{max-width:400px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.account-settings{max-width:850px}.side-bottom a{display:block}@media(max-width:1100px){.dashboard-grid{grid-template-columns:1fr}}

.row-actions{display:flex;align-items:center;gap:12px;white-space:nowrap}.row-actions a{font-weight:600}.module-editor .panel{margin:0}.module-editor>summary{list-style:none}.module-editor>summary::-webkit-details-marker{display:none}

/* v1.8: dense diffusion board */
.diffusion-board{padding:16px}.diffusion-table{min-width:930px}.diffusion-table td{vertical-align:middle}.diffusion-table th{white-space:nowrap}.diffusion-table .inline-cell{margin:0}.inline-cell select,.inline-cell input{width:100%;min-width:115px;font-size:12px;padding:7px}.diffusion-table .last-exchange{min-width:220px;max-width:330px}.last-date{display:block;font-size:11px;color:#6d7a8c;margin-bottom:3px}.exchange-summary{font-size:12px;white-space:normal;line-height:1.35;max-height:3.9em;overflow:hidden}.cr-toggle{font-size:12px;white-space:nowrap;padding:7px 10px}.cr-detail td{background:#f5f8fc!important;padding:16px!important}.quick-cr-form{display:flex;align-items:start;gap:10px;flex-wrap:wrap}.quick-cr-form .cr-context{width:100%;font-size:12px;font-weight:700}.quick-cr-form textarea{flex:1;min-width:260px;min-height:62px}.quick-cr-form button{white-space:nowrap}.cr-history{margin-top:12px;font-size:12px}.cr-history summary{cursor:pointer;color:#395572;font-weight:600}.cr-history div{padding:9px 0;border-bottom:1px solid #dce5ef}.diffusion-board .list-actions select{min-width:165px;font-size:12px}

.history-row{border-bottom:1px solid #e5eaf1;padding:10px 0}.history-structure{font-weight:700;font-size:12px;color:#455771;margin-bottom:3px}
.history-edit{margin:4px 0}.history-edit summary{display:flex;align-items:center;gap:12px;cursor:pointer;padding:7px 0;list-style:none}.history-edit summary::-webkit-details-marker{display:none}
.history-edit summary strong{font-size:12px;white-space:nowrap}.history-body{flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#4e5e73}.history-edit-label{font-size:12px;color:#326398}
.history-edit-form{display:flex;flex-wrap:wrap;gap:10px;align-items:end;background:#f7f9fc;padding:12px;border:1px solid #e3e9f1;border-radius:6px}.history-edit-form label{flex:0 0 150px}.history-edit-form .history-text{flex:1 1 300px}.history-edit-form textarea{min-height:58px}.history-edit-form button{align-self:end}.history-edit-form .history-delete{background:#fff;color:#9c3440;border:1px solid #e4b8be}.trash-list{margin-top:18px}.trash-list summary{cursor:pointer;font-size:12px;color:#66758a}

/* v2.0: focused diffusion workspace */
.diffusion-name{padding:0;border:0;background:transparent;color:#1d416e;font:inherit;text-align:left;cursor:pointer}.diffusion-name:hover{text-decoration:underline;filter:none}
.dossier-button{background:#eef2f7;color:#294361;border:1px solid #d9e1ed;padding:7px 11px;white-space:nowrap}.dossier-button span{font-size:18px;vertical-align:-1px;margin-left:3px}
.dossier-drawer[hidden]{display:none!important}.dossier-drawer{position:fixed;inset:0;z-index:1000;display:flex;justify-content:flex-end}
.dossier-backdrop{position:absolute;inset:0;background:rgba(16,27,42,.44)}
.dossier-sheet{position:relative;background:#fff;width:min(680px,100%);height:100%;box-shadow:-12px 0 36px #101b2a24;display:flex;flex-direction:column}
.dossier-header{display:flex;justify-content:space-between;gap:16px;padding:23px 28px 19px;border-bottom:1px solid #e2e8f0}.dossier-header h2{font-size:24px;margin:0 0 5px}
.dossier-close{font-size:26px;font-weight:400;background:#f0f3f7;color:#36475b;width:37px;height:37px;padding:0;flex:0 0 37px}
.dossier-scroll{overflow:auto;padding:24px 28px 45px}.dossier-scroll h3{font-size:15px;margin:28px 0 14px}.dossier-info{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.dossier-info>div{padding:12px;background:#f6f8fb;border:1px solid #e5ebf3;border-radius:7px}.dossier-info strong,.dossier-info span{display:block}.dossier-info strong{font-size:11px;color:#718096;margin-bottom:7px}.dossier-info span{font-weight:600}
.dossier-notes{margin-top:18px;border-left:3px solid #bac9db;padding:4px 14px}.dossier-notes p{margin:7px 0;line-height:1.55}.dossier-actions{margin-top:16px}
.dossier-cr-form{padding:16px;background:#f8fafc;border:1px solid #e3e9f1;border-radius:8px}.dossier-cr-form label{margin-bottom:12px}.dossier-form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.dossier-cr-form textarea{width:100%}
.dossier-scroll .history-edit{border-bottom:1px solid #e5eaf1;padding:10px 0}.journal-global{margin:0 0 15px}.journal-global>summary{cursor:pointer;font-weight:650;color:#3c526e;padding:12px 16px;border:1px solid #dce4ee;border-radius:8px;background:#fff}.journal-global[open]>summary{border-radius:8px 8px 0 0}.journal-global>.panel{border-radius:0 0 8px 8px}.journal-row[hidden]{display:none!important}
body.dossier-open{overflow:hidden}
@media(max-width:700px){.dossier-header{padding:16px}.dossier-scroll{padding:18px 16px 35px}.dossier-info{grid-template-columns:1fr 1fr}.dossier-form-row{grid-template-columns:1fr}}

/* v2.1: explicit and discoverable exchange entry */
.row-actions{white-space:nowrap}.new-exchange-button{background:#273c57;color:white;font-size:12px;padding:8px 10px;margin-right:7px}.new-exchange-button:hover{background:#3b5373}.dossier-cr-form{border:1px solid #dce4ef;background:#f7f9fc;padding:15px;border-radius:8px;margin-bottom:24px}.dossier-cr-form label{margin-bottom:10px}.dossier-cr-form button{margin-top:5px}.diffusion-table .last-exchange{min-width:185px}.diffusion-table .row-actions{min-width:240px}

.clear-date-button{border:0;background:transparent;color:#667085;padding:2px 6px;cursor:pointer;font-size:18px;vertical-align:middle}.clear-date-button:hover{color:#a22}
/* Carte des lieux */
.map-toolbar{display:flex;gap:12px;align-items:end;flex-wrap:wrap;margin-bottom:12px}.map-toolbar label{min-width:170px;flex:1;font-size:.83rem}.map-toolbar input,.map-toolbar select{width:100%}.map-legend{display:flex;gap:14px;flex-wrap:wrap;margin:12px 0;font-size:.82rem}.map-legend span{display:inline-flex;align-items:center;gap:5px}.pin-key{width:11px;height:11px;border-radius:50%;display:inline-block}#places-map{height:min(65vh,610px);min-height:370px;border:1px solid #d9dfe6;border-radius:8px;background:#e9edf1}.map-marker-wrap{background:transparent;border:0}.map-marker{display:block;width:18px;height:18px;border:3px solid white;border-radius:50%;box-shadow:0 1px 6px #26344288}.map-help{margin:10px 0 0;font-size:.8rem}.map-places-table{width:100%}.map-geo-form{display:flex;align-items:center;gap:6px;flex-wrap:wrap}.map-geo-form input[name=street_address]{min-width:150px;flex:1}.map-geo-form input[name=latitude],.map-geo-form input[name=longitude]{width:100px}.map-geo-form button{white-space:nowrap}.geo-feedback{font-size:.76rem;max-width:230px}.map-position{white-space:nowrap}@media(max-width:750px){#places-map{height:55vh;min-height:300px}.map-geo-form{min-width:350px}}

/* Leaflet fallback: prevents tile overflow when CDN stylesheet is blocked or late. */
#places-map{position:relative;overflow:hidden;isolation:isolate;z-index:0}
#places-map .leaflet-container{overflow:hidden;position:relative;outline:0}
#places-map .leaflet-pane,#places-map .leaflet-tile,#places-map .leaflet-marker-icon,#places-map .leaflet-marker-shadow,#places-map .leaflet-tile-container,#places-map .leaflet-pane>svg,#places-map .leaflet-pane>canvas{position:absolute;left:0;top:0}
#places-map .leaflet-map-pane{z-index:400}
#places-map .leaflet-tile-pane{z-index:200}
#places-map .leaflet-overlay-pane{z-index:400}
#places-map .leaflet-shadow-pane{z-index:500}
#places-map .leaflet-marker-pane{z-index:600}
#places-map .leaflet-tooltip-pane{z-index:650}
#places-map .leaflet-popup-pane{z-index:700}
#places-map .leaflet-control{position:relative;z-index:800;pointer-events:auto}
#places-map .leaflet-top,#places-map .leaflet-bottom{position:absolute;z-index:1000;pointer-events:none}
#places-map .leaflet-top{top:0}#places-map .leaflet-bottom{bottom:0}
#places-map .leaflet-left{left:0}#places-map .leaflet-right{right:0}
#places-map .leaflet-top .leaflet-control{margin-top:10px}#places-map .leaflet-left .leaflet-control{margin-left:10px}
#places-map .leaflet-bottom .leaflet-control{margin-bottom:10px}#places-map .leaflet-right .leaflet-control{margin-right:10px}
#places-map .leaflet-tile{visibility:hidden;max-width:none!important;max-height:none!important;border:0;padding:0;margin:0;user-select:none}
#places-map .leaflet-tile-loaded{visibility:inherit}
#places-map .leaflet-zoom-animated{transform-origin:0 0}
#places-map .leaflet-control-zoom a{display:block;width:30px;height:30px;line-height:30px;text-align:center;background:#fff;color:#222;border-bottom:1px solid #ccc;text-decoration:none;font-size:20px}
#places-map .leaflet-control-zoom{border:2px solid #0003;border-radius:4px;overflow:hidden}
#places-map .leaflet-control-attribution{background:#fffd;padding:2px 5px;font-size:10px}
#places-map .leaflet-popup{position:absolute;text-align:center;margin-bottom:20px}
#places-map .leaflet-popup-content-wrapper{background:white;border-radius:10px;box-shadow:0 2px 12px #0004;padding:10px}
#places-map .leaflet-popup-content{margin:8px;line-height:1.5;text-align:left}
#places-map .leaflet-popup-tip-container{position:absolute;left:50%;margin-left:-10px;width:20px;height:10px;overflow:hidden}
#places-map .leaflet-popup-tip{background:white;width:14px;height:14px;transform:rotate(45deg);margin:-8px auto 0}
#places-map .leaflet-popup-close-button{position:absolute;right:6px;top:4px;z-index:2}

.cancel-form{margin-left:10px}

/* Relance : date et effacement toujours sur une même ligne */
.inline-cell:has(.clear-date-button){display:flex!important;flex-flow:row nowrap!important;align-items:center;gap:3px;min-width:0}
.inline-cell:has(.clear-date-button) input[type=date]{min-width:0;width:145px;max-width:calc(100% - 27px)}
.inline-cell .clear-date-button{flex:0 0 23px;white-space:nowrap;padding:2px!important;margin:0!important}
.dossier-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.dossier-actions form{margin:0}

/* Enregistrement unique des engagements */
#global-engagement .fields>button[name=action],#global-engagement .subform>button[name=action],#global-engagement #engagement-details button[name=action],#global-engagement .panel>form>button[name=action]{display:none!important}
.global-save-bar{position:sticky;bottom:0;z-index:15;background:var(--panel,#fff);border:1px solid #d9dce1;border-radius:12px;padding:14px 20px;display:flex;gap:14px;justify-content:flex-end;align-items:center;box-shadow:0 -3px 18px #0001;margin:20px 0}
.global-save-bar button{min-width:120px}
#global-engagement .inline-cancel{margin:8px 0;display:inline-block}
#global-engagement .pending-item{padding:8px 12px;border:1px solid #ddd;border-radius:8px;margin:8px 0;display:flex;align-items:center;justify-content:space-between}
#global-engagement .action-row{display:none!important}
#global-engagement .venue-card button[value="venue_save"]{display:none!important}

/* Lecture d'un engagement sans formulaire */
.summary-actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.summary-actions .button{display:inline-block;background:var(--accent,#304b6b);color:white;padding:9px 14px;border-radius:7px;text-decoration:none}.summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:16px 24px;margin-top:16px}.summary-field small{display:block;opacity:.65;margin-bottom:5px}.summary-field div{white-space:normal;overflow-wrap:anywhere}.summary-entry{padding:15px 0;border-bottom:1px solid #ddd}.summary-entry:last-child{border-bottom:0}.summary-entry h3{margin:0}.summary-team{padding:7px 0}.summary-footer{justify-content:flex-end;margin:20px 0}

/* Fiches Spectacles : lecture seule, édition et navigation distinctes */
.show-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:22px}.show-head h2{margin:5px 0;font-size:25px}.show-actions,.show-footer{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.show-link{display:inline-block;padding:9px 13px;border:1px solid #d7dfe8;border-radius:7px;text-decoration:none;color:#324660;font-weight:600}.show-primary{display:inline-block;padding:10px 15px;background:#273c57;color:white;border-radius:7px;text-decoration:none;font-weight:650}.show-section{padding:18px 0;border-top:1px solid #e5eaf1}.show-section h3{margin:0 0 14px;font-size:16px}.show-facts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 24px;margin:0}.show-facts>div{min-width:0}.show-facts dt{color:#6b798c;font-size:12px;margin-bottom:4px}.show-facts dd{margin:0;white-space:normal;overflow-wrap:anywhere}.show-fieldset{border:0;border-top:1px solid #e5eaf1;padding:18px 0;margin:0}.show-fieldset legend{font-weight:700;padding:0 10px 0 0}.show-footer{justify-content:flex-end;padding-top:18px;border-top:1px solid #e5eaf1}.show-delete{margin-top:24px}.show-delete button{background:#fff;color:#a23636;border:1px solid #e3c5c5}.show-form .fields{grid-template-columns:repeat(3,minmax(0,1fr))}@media(max-width:700px){.show-head{flex-direction:column}.show-facts{grid-template-columns:1fr}.show-form .fields{grid-template-columns:1fr}}
/* Calendrier */
.cal-subscribe-link{font-size:.78rem;color:#858b94!important;font-weight:400;text-decoration:none}.cal-toolbar,.cal-filters,.cal-modes,.cal-nav,.cal-legend{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.cal-toolbar{justify-content:space-between;margin:18px 0}.cal-nav a{font-size:24px;text-decoration:none;padding:0 10px}.cal-modes a{padding:7px 12px;border-radius:7px;text-decoration:none;color:inherit;background:#f2f3f5}.cal-modes .selected{background:#263343;color:white}.cal-filters{margin:12px 0 20px}.cal-filters select{width:auto;max-width:220px}.cal-legend{font-size:.8rem;color:#5c6774;margin:15px 0}.cal-tentative{color:#9299a2}.cal-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));border-top:1px solid #ddd;border-left:1px solid #ddd}.cal-weekday{text-align:center;font-size:.78rem;padding:9px;background:#f1f2f4;border-right:1px solid #ddd}.cal-day{min-height:130px;padding:7px 5px;border-right:1px solid #ddd;border-bottom:1px solid #ddd;overflow:hidden}.cal-day>strong{font-size:.8rem}.cal-outside{background:#f7f7f7;color:#999}.cal-today{background:#f3f7fc}.cal-item{display:block;margin-top:4px;padding:4px 6px;background:#e6effb;border-left:3px solid #3e79b3;border-radius:3px;text-decoration:none;color:#24334b;font-size:.73rem;line-height:1.3;overflow-wrap:anywhere}.cal-item small{display:block;font-size:.65rem}.cal-period{background:#f0f2f4;border-left-color:#9da8b3;color:#586471}.cal-unconfirmed{background:#ededed!important;border-left-color:#aaa!important;color:#777!important}.cal-residence{border-left-color:#9365b4}.cal-eac{border-left-color:#cc8a31}.cal-presentation{border-left-color:#4b9d8d}.cal-person-grid{overflow-x:auto}.cal-person-row{display:grid;grid-template-columns:160px repeat(31,minmax(22px,1fr));min-width:870px;border-bottom:1px solid #e5e7ea}.cal-person-row>*{font-size:.7rem;padding:8px 2px;text-align:center}.cal-person-row strong{text-align:left}.cal-person-head{background:#f2f3f5}.cal-busy{background:#e4eef9;color:#3772a6}.cal-editor>summary{cursor:pointer;font-weight:600;padding:12px 0}@media(max-width:750px){.cal-day{min-height:100px;padding:4px 2px}.cal-item{font-size:.65rem;padding:3px}.cal-item small{display:none}.cal-weekday{font-size:.7rem}}

/* v3.4.1 : adaptation mobile uniquement. Desktop inchangé. */
.mobile-menu-toggle{display:none}
@media(max-width:700px){
 html,body{max-width:100%;overflow-x:hidden}
 .shell{display:block;min-width:0}
 .sidebar{position:relative;display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;justify-content:space-between;width:100%;height:auto;padding:8px 15px;background:#151d29}
 .sidebar-brand{display:flex;flex-direction:row;gap:10px;padding:0;align-items:center}
 .sidebar-brand img{width:86px;height:54px;object-fit:contain}
 .sidebar-brand span{font-size:10px;letter-spacing:.17em}
 .mobile-menu-toggle{display:inline-flex;align-items:center;gap:8px;background:#28394e;color:#fff;border:1px solid #40516a;border-radius:8px;padding:9px 12px;font-size:13px;min-height:40px}
 .side-nav{display:none;width:100%;flex-direction:column;flex-wrap:nowrap;overflow:visible;gap:0;margin-top:10px;padding:8px 0 4px;border-top:1px solid #354255}
 .side-nav.mobile-nav-open{display:flex}
 .nav-group{display:block;width:100%;margin:0;padding:3px 0;border:0}
 .nav-group .nav-caption{display:block;padding:10px 9px 4px;font-size:10px}
 .nav-group .nav-disabled{display:none}
 .side-nav a{display:block;white-space:normal;padding:11px 13px;border-radius:7px;font-size:14px}
 .side-bottom{display:none!important}
 .topbar{min-height:45px;padding:8px 15px;gap:8px;align-items:center}
 .topbar-context{font-size:12px;line-height:1.3;min-width:0;overflow-wrap:anywhere}
 .topbar-right{gap:8px;flex-shrink:0}
 .user-pill{display:none}
 .top-logout{padding:7px 9px;font-size:11px}
 .content{padding:17px 13px 60px;min-width:0}
 .page-heading{margin-bottom:14px}
 .page-heading h1{font-size:25px}
 .eyebrow{font-size:9px}
 .panel{padding:15px;margin-bottom:13px;max-width:100%;min-width:0}
 .panel h2{font-size:17px}
 .module-editor>summary{padding:14px 15px}
 .list-heading{gap:12px}
 .table-search{width:100%;font-size:16px}
 .table-wrap{width:100%;max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}
 table{font-size:13px}
 td,th{padding:10px 9px}
 .row-actions{gap:8px}
 input,select,textarea{max-width:100%}
 .inline{align-items:stretch}
 .inline>label{min-width:0}
 .dossier-header{flex-wrap:wrap;gap:10px}
 .show-actions,.show-footer{gap:8px}
 .cal-toolbar{gap:10px}
 .cal-grid{min-width:0}
 .cal-day{min-height:76px}
 .cal-item{font-size:10px;line-height:1.2}
}
@media(max-width:390px){.topbar-context{font-size:11px}.sidebar-brand img{width:72px}.sidebar-brand span{font-size:9px}.top-logout{font-size:10px;padding:7px}.content{padding-left:10px;padding-right:10px}}

/* Adresse administrative facultative, distincte de l’adresse physique */
.postal-address-extra{grid-column:1/-1;margin:.4rem 0}.postal-address-extra summary{cursor:pointer;color:var(--muted,#64748b);font-size:.9rem;padding:.5rem 0}.postal-address-extra label{display:block;margin-top:.5rem}.postal-address-extra textarea{width:100%;min-height:5rem}

/* Catégories de structures */
.category-picker{border:1px solid #d8dde3;border-radius:8px;padding:14px;margin:0;min-width:0}
.category-picker legend{font-weight:600;padding:0 5px}
.category-choices{display:flex;flex-wrap:wrap;gap:8px 16px;margin:8px 0}
.category-choice{display:inline-flex;align-items:center;gap:6px;width:auto;font-weight:400}
.category-choice input{width:auto;margin:0}
.category-filter{margin:12px 0;display:flex}
.category-filter label{max-width:320px}
.category-admin-item{display:flex;flex-wrap:wrap;align-items:center;gap:8px;border-top:1px solid #e4e7eb;padding:12px 0}
.category-admin-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.category-admin-row input,.category-admin-row select{width:auto;min-width:140px}
@media(max-width:700px){.category-admin-item{align-items:stretch}.category-admin-row{width:100%}.category-admin-row input{flex:1;min-width:120px}}

.app-credit{font-size:10px;color:#9ca3af;text-align:center;padding:30px 8px 12px;font-weight:400}
.export-filters{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin:16px 0}
.export-columns{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:8px;margin:12px 0}
.export-columns label{display:flex;align-items:center;gap:8px;font-weight:400}
.export-columns input{width:auto;margin:0}
.export-preview{margin-top:20px}
.export-preview table{font-size:12px}
.export-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:16px 0}

/* Calendrier annuel et couleurs des spectacles */
.show-color-picker{display:inline-flex;align-items:center;gap:12px;margin:8px 0 0;font-size:.8rem;color:#667085}.show-color-picker input{width:38px;height:30px;padding:2px;cursor:pointer}
.cal-item[style*="--show-color"]{border-left-color:var(--show-color);background:color-mix(in srgb,var(--show-color) 13%,white)}
.cal-period[style*="--show-color"]{border-left-color:var(--show-color);background:color-mix(in srgb,var(--show-color) 8%,white)}
.cal-unconfirmed,.cal-annule{background:#ededed!important;border-left-color:#aaa!important;color:#777!important}
.cal-year-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.cal-year-month{border:1px solid #e2e5e9;border-radius:8px;padding:12px;min-width:0}.cal-year-month h3{margin:0 0 10px;font-size:.95rem}.cal-year-month h3 a{color:inherit;text-decoration:none}.cal-mini-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:2px}.cal-mini-weekday{text-align:center;font-size:.7rem;color:#7c8490}.cal-mini-day{position:relative;display:flex;flex-direction:column;align-items:center;min-height:33px;font-size:.76rem;padding:3px 0;text-decoration:none;color:inherit;border-radius:4px}.cal-mini-day:hover{background:#eef2f7}.cal-mini-today{outline:1px solid #5c7aa0}.cal-mini-dots{display:flex;gap:2px;margin-top:3px}.cal-mini-dots i{width:5px;height:5px;border-radius:50%;display:block}
@media(max-width:800px){.cal-year-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:520px){.cal-year-grid{grid-template-columns:1fr}}

/* v3.6.2 — footer pinned to the bottom of the viewport on short pages */
.workspace{display:flex;flex-direction:column;min-height:100vh}
.workspace>.content{width:100%;flex:1;display:flex;flex-direction:column}
.workspace>.content>.app-credit{margin-top:auto;flex-shrink:0}
@media(max-width:700px){.workspace{min-height:100vh}}

/* Fiche latérale du calendrier */
.cal-drawer-shade{position:fixed;inset:0;background:rgba(15,25,40,.34);z-index:900}.cal-drawer-shade[hidden]{display:none}
.cal-drawer{position:fixed;top:0;right:0;height:100dvh;width:min(460px,100vw);max-width:100vw;overflow-y:auto;background:#fff;box-shadow:-8px 0 32px #14202a2b;z-index:901;transform:translateX(105%);transition:transform .22s ease;padding:24px;box-sizing:border-box;visibility:hidden}
.cal-drawer.open{transform:translateX(0);visibility:visible}.cal-drawer-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #e5e7eb;padding-bottom:12px}.cal-drawer-head button{border:0;background:transparent;color:#667085;font-size:28px;cursor:pointer;padding:0 8px}.cal-drawer h2{font-size:1.35rem;line-height:1.3;margin:22px 0}.cal-drawer-field{margin:15px 0}.cal-drawer-field small{display:block;color:#6c7683;font-size:.78rem;margin-bottom:4px}.cal-drawer-field div{white-space:pre-wrap;overflow-wrap:anywhere}.cal-drawer-action{margin-top:20px;width:100%;cursor:pointer}.cal-drawer .cal-editor{border:0;padding:0;margin:12px 0}.cal-drawer .fields{display:grid;grid-template-columns:1fr;gap:12px}.cal-drawer .fields>*{min-width:0}.cal-drawer .member-grid{max-height:220px;overflow-y:auto}.cal-drawer .form-actions{display:flex;flex-wrap:wrap;gap:8px}.cal-drawer .panel{box-shadow:none}
@media(max-width:600px){.cal-drawer{width:100vw;padding:18px}}

/* v3.6.4 — Sidebar scrolls internally on shorter screens. */
@media(min-width:701px){
.sidebar{height:100vh;height:100dvh;min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#435269 #151d29}
.side-nav{flex-shrink:0}
.side-bottom{flex-shrink:0;margin-top:auto;background:#151d29}
}

/* v3.6.6 : actions d'édition des événements sur une ligne */
.cal-event-actions{display:flex!important;align-items:center;justify-content:flex-start;flex-wrap:wrap;gap:12px!important;width:100%;grid-column:1/-1;margin-top:12px}
.cal-event-actions>a,.cal-event-actions>button{display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;margin:0!important;white-space:nowrap;min-height:38px;width:auto!important;flex:0 0 auto}
.cal-event-actions .cal-delete-button{margin-left:auto!important}
.cal-drawer .cal-event-actions{display:flex!important;gap:10px!important}
@media(max-width:420px){.cal-event-actions{gap:8px!important}.cal-event-actions .cal-delete-button{margin-left:0!important}}

/* Export avancé */
.export-preset-bar,.export-preset-save{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:14px 0;padding:12px;border:1px solid #e0e4ea;border-radius:8px}
.export-preset-bar label,.export-preset-save label{flex:1;min-width:200px}
.export-email-only{display:flex;align-items:center;gap:8px}.export-email-only input{width:auto}

/* Exports v3.7.1 */
.export-geo{grid-column:1/-1;min-width:0;padding:12px;border:1px solid #dce2e9;border-radius:9px}
.export-geo legend{font-weight:650;padding:0 6px}
.export-geo-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}
.export-geo-options{max-height:180px;overflow:auto;border:1px solid #e4e8ed;border-radius:6px;padding:7px;margin:7px 0}
.export-geo-options label{display:flex;align-items:center;gap:7px;font-size:13px;font-weight:400;padding:3px 0}
.export-geo-options input,.export-select-tools input{width:auto;margin:0}
.export-select-tools{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:12px 0}
.export-select-tools label{display:flex;align-items:center;gap:6px}
@media(max-width:700px){.export-geo-grid{grid-template-columns:1fr}}
/* Feuilles de route */
.roadmap-new{display:flex;align-items:end;gap:14px;flex-wrap:wrap}.roadmap-new label{flex:1;min-width:230px}.roadmap-header-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.roadmap-plan-row{display:grid;grid-template-columns:135px 105px 105px minmax(140px,1fr) minmax(160px,1fr) auto;gap:9px;align-items:end;border-bottom:1px solid #e3e7eb;padding:12px 0}.roadmap-plan-row label{font-size:12px}.roadmap-plan-row input{width:100%;min-width:0}.roadmap-row-actions{display:flex;gap:3px;align-items:center}.roadmap-row-actions button{padding:8px!important;min-width:30px}.roadmap-section-row{border:1px solid #e2e7ed;border-radius:10px;padding:14px;margin:12px 0;display:flex;flex-direction:column;gap:8px}.roadmap-section-row textarea{width:100%;resize:vertical}.roadmap-section-row .roadmap-row-actions{align-self:flex-end}.roadmap-save{display:flex;justify-content:flex-end;gap:12px;margin-top:26px;border-top:1px solid #e3e7eb;padding-top:18px}@media(max-width:900px){.roadmap-plan-row{grid-template-columns:repeat(3,minmax(0,1fr))}.roadmap-plan-row label:nth-child(4),.roadmap-plan-row label:nth-child(5){grid-column:span 3}.roadmap-header-fields{grid-template-columns:1fr}}

.roadmap-member-row{display:grid;grid-template-columns:1.3fr 1fr 1fr 1.4fr auto;gap:10px;align-items:end;margin:10px 0;padding:12px;border:1px solid var(--border,#ddd);border-radius:8px}.roadmap-member-row label{min-width:0}.roadmap-member-row input{width:100%}@media(max-width:850px){.roadmap-member-row{grid-template-columns:1fr 1fr}.roadmap-member-row .roadmap-row-actions{grid-column:1/-1}}
/* v3.8.2 : édition des rubriques et types d'événements */
.roadmap-section-picker{display:flex;flex-direction:column;gap:5px;font-size:12px;color:#5b6674}.roadmap-section-picker select{width:100%;max-width:520px}.roadmap-section-row>label:not(.roadmap-section-picker){display:flex;flex-direction:column;gap:5px}.roadmap-plan-row{grid-template-columns:125px 95px 95px minmax(120px,1fr) minmax(140px,1fr) minmax(140px,1fr) auto}.roadmap-plan-row select{width:100%;min-width:0}
@media(max-width:1050px){.roadmap-plan-row{grid-template-columns:repeat(3,minmax(0,1fr))}.roadmap-plan-row label:nth-child(n+4){grid-column:span 3}}

/* Feuille de route : suppression visible et centrée */
.roadmap-delete-panel{text-align:center}.roadmap-delete-panel form{display:flex;justify-content:center}.roadmap-delete-panel .roadmap-delete-button{background:#b42332!important;color:#fff!important;border:1px solid #b42332!important;border-radius:8px;padding:11px 22px;font-weight:700;cursor:pointer}.roadmap-delete-panel .roadmap-delete-button:hover{background:#8f1b27!important;border-color:#8f1b27!important}

/* v3.8.5 : suppression centrée même si les styles généraux des formulaires s’appliquent */
section.roadmap-delete-panel{display:flex!important;justify-content:center!important;align-items:center!important;width:100%;box-sizing:border-box;text-align:center!important}section.roadmap-delete-panel>form{display:flex!important;justify-content:center!important;align-items:center!important;width:100%!important;margin:0 auto!important;flex-direction:row!important}section.roadmap-delete-panel button.roadmap-delete-button{display:inline-block!important;width:auto!important;max-width:100%;margin:0 auto!important;background:#b42332!important;color:white!important}

/* Feuilles de route : ajout depuis l'annuaire */
.roadmap-team-add{display:flex;flex-wrap:wrap;align-items:end;gap:12px;margin:12px 0 22px}.roadmap-team-add label{flex:1 1 260px;min-width:220px}.roadmap-team-add select{width:100%}.roadmap-team-add button{white-space:normal}

/* Feuilles de route : versions et archivage */
.roadmap-version-fields{margin:18px 0 22px;padding:16px;border:1px solid #dce4ec;border-radius:9px;background:#f8fafc}.roadmap-version-fields h3{margin:0 0 12px}.roadmap-version-grid{display:grid;grid-template-columns:minmax(120px,200px) minmax(160px,220px);gap:14px}.roadmap-version-fields .muted{margin:9px 0 0;font-size:12px}.roadmap-archives{margin-top:22px}.roadmap-archives summary{cursor:pointer;font-weight:650;padding:6px 0;list-style:revert}.roadmap-archive-content{padding-top:14px}.roadmap-search-label{display:block;max-width:430px;margin:12px 0 16px}.roadmap-search-label input{display:block;width:100%;margin-top:5px}.roadmap-list-actions{white-space:nowrap}.roadmap-list-actions form{display:inline-flex;align-items:center;gap:7px;margin-left:10px}.roadmap-list-actions button{padding:7px 10px}.roadmap-danger-action{background:#b42332!important;border-color:#b42332!important;color:#fff!important}.roadmap-danger-action:hover{background:#8f1b27!important}.roadmap-list-table tr[hidden]{display:none}.roadmap-no-results{margin-top:12px}@media(max-width:650px){.roadmap-version-grid{grid-template-columns:1fr}.roadmap-list-actions{white-space:normal}.roadmap-list-actions form{display:flex;margin:8px 0 0}}

/* v3.8.8 — contacts opérationnels des lieux */
.venue-staff-edit{border:1px solid var(--border,#d9dde2);border-radius:8px;padding:12px;margin:12px 0}.venue-staff-edit summary{cursor:pointer;font-weight:600}.venue-staff-edit form{margin-top:12px}.roadmap-venue-check{display:inline-flex;gap:8px;align-items:center;margin:6px 12px 6px 0;padding:8px 10px;border:1px solid var(--border,#ddd);border-radius:6px;cursor:pointer}.roadmap-venue-check input{width:auto}.roadmap-member-row:has([data-venue-key]){grid-template-columns:1.2fr 1fr 1fr 1.3fr 1fr auto}@media(max-width:950px){.roadmap-member-row:has([data-venue-key]){grid-template-columns:1fr 1fr}}

/* Feuilles de route : trajets individuels */
.roadmap-journey-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px;margin:10px 0;border:1px solid #dce3e8;border-radius:8px;background:#f7f9fa}.roadmap-journey-row label{min-width:0}.roadmap-journey-row input,.roadmap-journey-row select{width:100%;box-sizing:border-box}.roadmap-journey-row label:first-child{grid-column:span 2}@media(max-width:700px){.roadmap-journey-row{grid-template-columns:1fr}.roadmap-journey-row label:first-child{grid-column:auto}}

.roadmap-lodging-row,.roadmap-assignment-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:14px;margin:10px 0;border:1px solid #dce3e8;border-radius:8px;background:#f7f9fa}.roadmap-lodging-row label,.roadmap-assignment-row label{min-width:0}.roadmap-lodging-row input,.roadmap-assignment-row input,.roadmap-assignment-row select{width:100%;box-sizing:border-box}@media(max-width:700px){.roadmap-lodging-row,.roadmap-assignment-row{grid-template-columns:1fr}}

.roadmap-journey-people{grid-column:1/-1;padding:10px 12px;background:#fff;border:1px solid #dce3e8;border-radius:7px}.roadmap-journey-people-list{display:flex;flex-wrap:wrap;gap:8px 16px;margin-top:9px}.roadmap-journey-person{display:inline-flex;align-items:center;gap:5px;cursor:pointer}.roadmap-journey-person input{width:auto!important;margin:0}


/* v3.10.9 — Habillage éditorial, sans changement de structure */
:root { background:#f6f5f2; }
body { background:#f6f5f2; }
.content { max-width:1480px; }
.panel { border:1px solid #e6e5e0; border-left:3px solid #c6c9c9; border-radius:3px; box-shadow:none; background:#fff; }
.panel:focus-within { border-left-color:#54728c; }
.panel h2 { letter-spacing:-.025em; font-weight:730; }
input,select,textarea { border-radius:3px; border-color:#d8dcd9; background:#fdfdfc; box-shadow:none; }
input:focus,select:focus,textarea:focus { border-color:#59788e; box-shadow:0 0 0 2px #59788e1c; }
button { border-radius:3px; box-shadow:none; }
button.ghost { background:#eceeea; }
.topbar { background:#fdfdfc; border-bottom-color:#e7e5df; }
.side-nav a,.side-bottom a { border-radius:3px; }
.table-wrap { border-radius:3px; }
th { letter-spacing:.035em; }
@media(max-width:700px) { .panel { border-left-width:2px; } }

/* v3.10.10 — refonte visuelle perceptible des cadres */
body{background:#f2f0ec;color:#202a35}
.workspace .content{max-width:1540px}
.content>.panel,.content .panel{border:0;border-top:2px solid #314a62;border-radius:0;background:#fff;box-shadow:0 6px 22px rgba(28,43,55,.055);padding:24px 28px;margin-bottom:25px}
.content .panel .panel{border-top:1px solid #d9dcd9;box-shadow:none;background:#faf9f6;padding:18px 20px;margin:16px 0}
.content .panel h2{font-size:19px;font-weight:680;letter-spacing:-.035em;color:#20394c;margin-bottom:20px}
.content .page-heading h1{font-size:31px;letter-spacing:-.045em}
.content .module-editor{border:0;border-top:1px solid #d8ddd9;border-radius:0;background:transparent;margin:12px 0}
.content .module-editor>summary{background:#f2f4f2;border:0;border-left:3px solid #d2a04b;border-radius:0;padding:15px 18px;font-weight:680;color:#233d50}
.content .module-editor[open]>summary{background:#e8edea}
.content .roadmap-section-row,.content .roadmap-member-row,.content .roadmap-journey-row,.content .roadmap-lodging-row,.content .roadmap-assignment-row{border:0;border-left:3px solid #b7c6c5;border-radius:0;background:#f6f7f5;padding:17px 20px;margin:13px 0;box-shadow:none}
.content .roadmap-version-fields,.content .export-preset-bar,.content .export-preset-save,.content .export-geo{border:0;border-left:3px solid #b7c6c5;border-radius:0;background:#f6f7f5}
.content input:not([type=checkbox]):not([type=radio]),.content select,.content textarea{border:1px solid #cbd4d1;border-radius:2px;background:#fff;padding:11px 12px}
.content button,.content .new-entry{border-radius:2px;letter-spacing:.01em}
.content button.ghost{background:#e8ece9;color:#263e4e}
.content .table-wrap{border:0;border-radius:0}
.content table th{background:#e9eeeb;color:#2b4654;text-transform:uppercase;letter-spacing:.075em;font-size:10px}
.content table td{border-bottom:1px solid #e0e5e1}
.content .roadmap-journey-people{border:0;border-radius:0;background:#fff}
@media(max-width:700px){.content>.panel,.content .panel{padding:18px 16px;margin-bottom:18px}.content .panel .panel{padding:14px}.content .page-heading h1{font-size:26px}}

/* v3.10.12 — Actions de liste : engagements et équipe */
.content table a.list-open-action{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:34px;padding:7px 13px;border:1px solid #27475e;background:#27475e;color:#fff!important;border-radius:3px;text-decoration:none;font-size:12px;font-weight:700;white-space:nowrap;transition:background .15s,border-color .15s}
.content table a.list-open-action:hover,.content table a.list-open-action:focus-visible{background:#d3a54c;border-color:#d3a54c;color:#172b3b!important;text-decoration:none}
.content table a.list-open-action span{font-size:16px;line-height:1}

/* Action secondaire explicite dans les feuilles de route */
.roadmap-save .roadmap-cancel-button{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:10px 18px;background:#e8ece9;color:#263e4e;border:1px solid #c4cfcb;border-radius:5px;text-decoration:none;font-weight:700;line-height:1.2;transition:background .15s,border-color .15s}
.roadmap-save .roadmap-cancel-button:hover,.roadmap-save .roadmap-cancel-button:focus-visible{background:#d4dfdb;border-color:#819b93;text-decoration:none;color:#1c3341}
/* Devis de cession */
.quote-list-row{display:flex;justify-content:space-between;align-items:center;gap:15px;border-bottom:1px solid #dce3e7;padding:13px 0}.quote-list-row>div:last-child{display:flex;align-items:center;gap:8px}.quote-prices{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:14px}.quote-prices label,.quote-line label{display:flex;flex-direction:column;gap:5px}.quote-days,.quote-matrix{width:100%;border-collapse:collapse;margin:14px 0}.quote-days td,.quote-days th,.quote-matrix td,.quote-matrix th{border-bottom:1px solid #dce3e7;padding:8px;text-align:left}.quote-days input{min-width:85px;width:105px}.quote-matrix-wrap{max-width:100%;overflow-x:auto}.quote-matrix td,.quote-matrix th{text-align:center;white-space:nowrap}.quote-matrix th:first-child{text-align:left}.quote-matrix input{width:18px;height:18px}.quote-line{display:grid;grid-template-columns:minmax(160px,2fr) 110px 130px 35px;gap:12px;align-items:end;margin:10px 0}.quote-line>input{width:100%}.quote-total{margin-top:25px;padding:18px;background:#20374a;color:#fff;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap}.quote-total strong{font-size:1.25em}.quote-subtotal{text-align:right;font-weight:600}@media(max-width:700px){.quote-line{grid-template-columns:1fr 1fr}.quote-prices{grid-template-columns:1fr}.quote-list-row{align-items:flex-start;flex-direction:column}.quote-days{display:block;overflow-x:auto}}

/* v3.11.14 — actions distinctes, bouton Ouvrir unifié */
.quote-list-actions{display:flex;align-items:center;flex-wrap:wrap;gap:12px!important}
.quote-list-actions form{margin:0!important}
.quote-list-actions a.list-open-action,.roadmap-list-actions a.list-open-action{display:inline-flex;align-items:center;gap:9px;min-height:34px;padding:7px 13px;background:#27475e;color:#fff!important;border:1px solid #27475e;border-radius:3px;font-size:12px;font-weight:700;text-decoration:none;white-space:nowrap}
.quote-list-actions a.list-open-action:hover,.roadmap-list-actions a.list-open-action:hover{background:#d3a54c;border-color:#d3a54c;color:#172b3b!important}
.quote-list-actions a.quote-pdf-button{display:inline-flex;align-items:center;justify-content:center;min-height:34px;padding:7px 14px;border:1px solid #9aa8b2;border-radius:3px;background:#fff;color:#27475e!important;text-decoration:none;font-size:12px;font-weight:700;white-space:nowrap}
.quote-list-actions a.quote-pdf-button:hover{background:#eef2f4}
.content a.list-open-action{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:34px;padding:7px 13px;border:1px solid #27475e;background:#27475e;color:#fff!important;border-radius:3px;text-decoration:none;font-size:12px;font-weight:700;white-space:nowrap}
.content a.list-open-action:hover{background:#d3a54c;border-color:#d3a54c;color:#172b3b!important}

/* v3.11.16 — libellé nuitées sur une ligne */
#quote-editor label.quote-checkbox-inline{display:inline-flex;flex-direction:row;align-items:center;justify-content:flex-start;gap:9px;width:auto;max-width:100%;margin:10px 0;cursor:pointer}
#quote-editor label.quote-checkbox-inline input[type="checkbox"]{width:16px;height:16px;min-width:16px;margin:0;flex:0 0 16px}

/* v3.11.17 — un seul style Ouvrir dans toutes les listes, y compris hors tableaux */
.content a.list-open-action,
.content table a.list-open-action,
.content .quote-list-actions a.list-open-action,
.content .roadmap-list-actions a.list-open-action{
 display:inline-flex!important;align-items:center!important;justify-content:center!important;
 gap:9px!important;min-height:34px!important;padding:7px 13px!important;
 box-sizing:border-box!important;border:1px solid #27475e!important;
 border-radius:3px!important;background:#27475e!important;color:#fff!important;
 font-size:12px!important;font-weight:700!important;line-height:18px!important;
 text-decoration:none!important;white-space:nowrap!important;box-shadow:none!important;
}
.content a.list-open-action:hover,.content a.list-open-action:focus-visible{
 background:#d3a54c!important;border-color:#d3a54c!important;color:#172b3b!important;
}
.content .quote-list-actions{column-gap:18px!important;row-gap:10px!important}
.content .quote-list-actions a.quote-pdf-button{background:#f3f5f6!important;border:1px solid #8495a1!important;color:#27475e!important;margin-left:4px!important}

.free-quote-line{display:grid;grid-template-columns:minmax(180px,3fr) minmax(85px,1fr) minmax(110px,1fr) auto;gap:12px;align-items:end;margin:12px 0}.free-quote-line label{display:block}.free-quote-line input{width:100%;box-sizing:border-box}.free-quote-total{text-align:right;font-size:1.3rem;margin:22px 0}@media(max-width:700px){.free-quote-line{grid-template-columns:1fr 1fr}.free-quote-line label:first-child{grid-column:1/-1}}

/* Devis : création côte à côte */
.quote-create-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;align-items:stretch}.quote-create-grid>.panel{min-width:0;margin:0}.quote-create-grid .fields{min-width:0}@media(max-width:760px){.quote-create-grid{grid-template-columns:1fr}}

/* Diffusion : synthèse et filtres */
.diffusion-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:14px}.diffusion-kpis button{background:var(--surface,#f5f6f8);border:1px solid #d8dce2;border-radius:10px;padding:14px;text-align:left;cursor:pointer;color:inherit}.diffusion-kpis strong{display:block;font-size:1.65rem}.diffusion-kpis span{font-size:.83rem}.diffusion-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:12px 0 18px}.diffusion-filters label{font-size:.82rem}.diffusion-filters select{display:block;width:100%;margin-top:5px}.diffusion-secondary-projects{font-size:.8rem;max-width:200px;white-space:normal}.diffusion-due-alert{display:block;color:#b64230;font-size:.78rem}.diffusion-table td{vertical-align:top}.diffusion-table .inline-cell select{max-width:170px}.diffusion-table .exchange-summary{max-width:230px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:800px){.diffusion-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.diffusion-filters{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* v3.12.22 — suivi de diffusion épuré */
.diffusion-summary{padding:22px 28px}.diffusion-summary .list-heading{margin-bottom:12px}.diffusion-kpis{grid-template-columns:repeat(3,minmax(0,1fr));max-width:700px;gap:12px}.diffusion-kpis button{display:flex;flex-direction:column;gap:5px;background:#f4f6f8!important;color:#243a53!important;border:1px solid #e0e5e9!important;padding:13px 16px!important;min-width:0;line-height:1.3}.diffusion-kpis strong{font-size:1.55rem!important;line-height:1.15}.diffusion-kpis span{font-size:.8rem!important;line-height:1.35;white-space:normal}.diffusion-board{padding:22px 28px}.diffusion-toolbar{display:flex;align-items:center;justify-content:space-between;gap:15px;flex-wrap:wrap;margin-bottom:16px}.diffusion-toolbar .table-search{max-width:350px;flex:1;min-width:200px}.diffusion-view-tabs{display:flex;gap:5px}.diffusion-view-tabs button{background:#f0f3f7;color:#2a4058;border:1px solid #dae1e9;padding:9px 16px;border-radius:7px}.diffusion-view-tabs button.active{background:#263d59;color:#fff}.diffusion-filters{display:flex;align-items:end;gap:12px;flex-wrap:wrap;margin:0 0 18px}.diffusion-filters>label{flex:1 1 190px;max-width:310px}.diffusion-filters label{font-size:.8rem}.diffusion-filters select{min-height:36px}.diffusion-more{flex:0 0 auto;position:relative;align-self:end}.diffusion-more>summary{list-style:none;cursor:pointer;padding:9px 12px;border:1px solid #d6dfe8;border-radius:6px;color:#334d6a;font-size:.83rem;font-weight:600}.diffusion-more>summary::-webkit-details-marker{display:none}.diffusion-more>summary:before{content:'⚙ ';}.diffusion-more[open]{flex:1 0 100%}.diffusion-advanced{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding:14px;background:#f6f8fa;border:1px solid #e1e6eb;border-radius:7px;margin-top:8px}.diffusion-table{min-width:690px}.diffusion-table th{font-size:.7rem}.diffusion-table td{vertical-align:middle;padding:13px 10px}.diffusion-table .row-actions{min-width:0}.diffusion-table .row-actions button{white-space:nowrap}.diffusion-state{display:block;font-size:.84rem;font-weight:650}.diffusion-state-secondary{display:block;color:#708096;font-size:.77rem;margin-top:4px}.diffusion-next .diffusion-date{display:block;font-size:.84rem}.diffusion-next .exchange-summary{max-width:250px;color:#6b7889;margin-top:4px}.diffusion-table .diffusion-secondary-projects{max-width:190px}@media(max-width:800px){.diffusion-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.diffusion-advanced{grid-template-columns:repeat(2,minmax(0,1fr))}.diffusion-summary,.diffusion-board{padding:16px}}

/* Diffusion v3.12.23 — isolated layout overrides */
.diffusion-summary .diffusion-kpis{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important;max-width:none!important}
.diffusion-summary .diffusion-kpis button{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:8px!important;padding:16px 20px!important;background:#f4f6f8!important;color:#263b52!important;border:1px solid #dce3e9!important;border-radius:8px!important;min-height:86px!important;white-space:normal!important}
.diffusion-summary .diffusion-kpis button strong{display:block!important;font-size:27px!important;line-height:1!important;margin:0!important;color:#233a53!important}
.diffusion-summary .diffusion-kpis button span{display:block!important;font-size:13px!important;line-height:1.3!important;margin:0!important;color:#53677c!important}
.diffusion-board .diffusion-toolbar{display:flex!important;align-items:center!important;justify-content:space-between!important;gap:14px!important;flex-wrap:wrap!important}
.diffusion-board .diffusion-filters{display:flex!important;align-items:end!important;gap:12px!important;flex-wrap:wrap!important}
.diffusion-board .diffusion-filters>label{flex:1 1 210px!important;max-width:none!important}
.diffusion-board .diffusion-filters>label select{width:100%!important}
.diffusion-table .diffusion-state,.diffusion-table .diffusion-state-secondary{display:block!important;white-space:normal!important;line-height:1.35!important}
.diffusion-table .diffusion-state-secondary{margin-top:5px!important;color:#6d7c8e!important}
.diffusion-table .row-actions{width:120px!important;min-width:0!important}
.diffusion-quick-edit{background:#f5f7fa;border:1px solid #dfe6ed;border-radius:10px;padding:18px;margin:0 0 20px}
.diffusion-quick-edit h3{margin:0 0 16px!important;font-size:17px!important;color:#263d59}
.diffusion-quick-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.diffusion-quick-grid label{display:flex;flex-direction:column;gap:6px;font-size:12px;font-weight:650;color:#40556b;min-width:0}
.diffusion-quick-grid input,.diffusion-quick-grid select{display:block;width:100%;min-width:0;box-sizing:border-box}
.diffusion-quick-action{grid-column:1/-1}
.diffusion-quick-edit>button{margin-top:15px}
@media(max-width:700px){.diffusion-summary .diffusion-kpis{gap:7px!important}.diffusion-summary .diffusion-kpis button{padding:10px!important;min-height:76px!important}.diffusion-summary .diffusion-kpis button strong{font-size:22px!important}.diffusion-summary .diffusion-kpis button span{font-size:11px!important}.diffusion-quick-grid{grid-template-columns:1fr}.diffusion-quick-action{grid-column:auto}}

/* Diffusion: one discussion editor, distinct agenda view */
.diffusion-actions[hidden],.diffusion-filters[hidden],.diffusion-board .table-wrap[hidden],.diffusion-board .table-search[hidden]{display:none!important}
.diffusion-actions-heading{margin:6px 0 24px}.diffusion-actions-heading h3{margin:0 0 5px}.diffusion-actions-heading p{font-size:13px;color:#65758a;margin:0}
.diffusion-action-group{font-size:13px;text-transform:uppercase;letter-spacing:.07em;color:#586b80;margin:20px 0 9px}.diffusion-action-list{display:grid;gap:8px}
.diffusion-action-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:5px 15px;width:100%;padding:15px 18px;background:#fff;color:#243a53;border:1px solid #dce3ea;border-radius:8px;text-align:left;cursor:pointer;box-shadow:none}
.diffusion-action-card:hover{background:#f6f9fc}.diffusion-action-title{font-size:15px;font-weight:700;grid-column:1}.diffusion-action-meta{font-size:12px;color:#65758a;grid-column:1}.diffusion-action-card time{grid-column:2;grid-row:1/3;align-self:center;font-weight:700;font-size:13px}.diffusion-actions-empty{padding:22px;background:#f5f7fa;border-radius:8px}
.diffusion-quick-edit{background:transparent;border:0;border-bottom:1px solid #e1e6eb;border-radius:0;padding:0 0 22px;margin:0 0 24px}.diffusion-quick-edit h3{font-size:16px!important}.diffusion-quick-edit>button{width:auto}
.diffusion-details{border:1px solid #dce4eb;border-radius:8px;margin:0 0 25px}.diffusion-details>summary{cursor:pointer;padding:13px 15px;font-size:13px;font-weight:700;color:#354c65;background:#f6f8fa}.diffusion-details-form{display:grid;gap:12px;padding:16px}.diffusion-details-form label{display:grid;gap:5px;font-size:12px;font-weight:650}.diffusion-details-form textarea{min-height:65px}.diffusion-details-form button{justify-self:start}.diffusion-delete{padding:0 16px 16px}.diffusion-delete button{font-size:12px}
@media(max-width:700px){.diffusion-action-card{padding:12px}.diffusion-action-card time{font-size:12px}}
