/* PLUS-CMS-M1-B — éditeur structuré des pages informatives */
body.eca-cms-admin-open{overflow:hidden}
.eca-cms-admin{position:fixed;inset:0;z-index:10080;background:#F5EFE3;color:var(--nf-ink,#2A2520);display:none;flex-direction:column;font-family:var(--font-ui,system-ui)}
.eca-cms-admin.open{display:flex}
.eca-cms-admin-head{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:12px;padding:max(12px,env(safe-area-inset-top)) 16px 12px;background:rgba(253,249,238,.97);border-bottom:1px solid rgba(42,37,32,.1)}
.eca-cms-admin-head>button:first-child{width:42px;height:42px;border:0;border-radius:50%;background:#fff;font-size:1.25rem;cursor:pointer}
.eca-cms-admin-head span,.eca-cms-block-toolbar span,.eca-cms-meta-head span{font-family:var(--font-mono,monospace);font-size:.55rem;letter-spacing:.12em;text-transform:uppercase;color:var(--nf-ink-mid,#756b60)}
.eca-cms-admin-head h1{font-family:var(--font-serif,serif);font-style:italic;font-weight:400;font-size:1.45rem;margin:1px 0 0}.eca-cms-new{border:0;border-radius:999px;padding:11px 15px;background:var(--nf-copper,#C46742);color:#fff;font-weight:600;cursor:pointer}
.eca-cms-admin-layout{min-height:0;flex:1;display:grid;grid-template-columns:240px minmax(0,1fr)}
.eca-cms-admin-pages{overflow:auto;padding:14px;border-right:1px solid rgba(42,37,32,.1);background:rgba(255,255,255,.45)}
.eca-cms-pages-title{font-weight:700;margin:0 0 10px}.eca-cms-page-tab{display:block;width:100%;text-align:left;border:1px solid rgba(42,37,32,.09);border-radius:13px;padding:11px 12px;margin-bottom:7px;background:#fff;cursor:pointer}.eca-cms-page-tab.active{border-color:var(--nf-copper,#C46742);background:rgba(196,103,66,.08)}.eca-cms-page-tab span{display:block;font-weight:650}.eca-cms-page-tab small{display:block;margin-top:3px;color:var(--nf-ink-mid,#756b60)}
.eca-cms-admin-main{overflow:auto;padding:18px 18px calc(110px + env(safe-area-inset-bottom))}
.eca-cms-meta,.eca-cms-block-editor{max-width:900px;margin:0 auto 16px;background:rgba(255,255,255,.76);border:1px solid rgba(42,37,32,.09);border-radius:20px;padding:18px;box-shadow:0 6px 24px rgba(42,37,32,.04)}
.eca-cms-meta-head{display:flex;justify-content:space-between;align-items:flex-start;gap:12px;margin-bottom:15px}.eca-cms-meta-head h2{font-family:var(--font-serif,serif);font-style:italic;font-weight:400;font-size:1.55rem;margin:3px 0}.eca-cms-status{font-size:.73rem;padding:6px 9px;border-radius:999px;background:rgba(74,123,92,.1);color:#3E694E}
.eca-cms-meta-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.eca-cms-meta label,.eca-cms-block-fields label{display:grid;gap:6px;font-size:.74rem;font-weight:650;color:var(--nf-ink-mid,#756b60)}.eca-cms-meta input,.eca-cms-meta select,.eca-cms-block-fields input,.eca-cms-block-fields select,.eca-cms-block-fields textarea,.eca-cms-block-toolbar select{width:100%;box-sizing:border-box;border:1px solid rgba(42,37,32,.17);border-radius:11px;background:#fff;padding:10px 11px;font:inherit;color:var(--nf-ink,#2A2520)}.eca-cms-block-fields textarea{resize:vertical;min-height:86px;line-height:1.45}.eca-cms-meta-note{font-size:.78rem;line-height:1.5;color:var(--nf-ink-mid);margin:13px 0 0}.eca-cms-visible{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;margin-top:12px}.eca-cms-visible input{width:auto}
.eca-cms-block-toolbar{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:15px}.eca-cms-block-toolbar strong{display:block;margin-top:3px}.eca-cms-block-toolbar>div:last-child{display:flex;gap:8px;align-items:center}.eca-cms-block-toolbar button{border:0;border-radius:999px;padding:10px 13px;background:var(--nf-copper,#C46742);color:#fff;cursor:pointer}
.eca-cms-block-list{display:grid;gap:11px}.eca-cms-edit-block{border:1px solid rgba(42,37,32,.1);border-radius:16px;background:#fff;overflow:hidden}.eca-cms-edit-block.is-hidden{opacity:.55}.eca-cms-edit-block>header{display:flex;justify-content:space-between;gap:10px;align-items:center;padding:11px 12px;background:rgba(42,37,32,.035);border-bottom:1px solid rgba(42,37,32,.07)}.eca-cms-type{display:block;font-weight:700}.eca-cms-edit-block small{color:var(--nf-ink-mid)}.eca-cms-block-actions{display:flex;gap:5px;flex-wrap:wrap;justify-content:flex-end}.eca-cms-block-actions button{border:1px solid rgba(42,37,32,.13);border-radius:8px;background:#fff;padding:6px 8px;cursor:pointer;font-size:.72rem}.eca-cms-block-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px;padding:13px}.eca-cms-block-fields label:has(textarea){grid-column:1/-1}.eca-cms-block-note{padding:0 13px 13px;color:var(--nf-ink-mid)}
.eca-cms-admin-actions{position:fixed;z-index:2;left:240px;right:0;bottom:0;display:flex;align-items:end;justify-content:flex-end;gap:8px;padding:12px 18px calc(12px + env(safe-area-inset-bottom));background:rgba(253,249,238,.97);border-top:1px solid rgba(42,37,32,.1);box-shadow:0 -8px 24px rgba(42,37,32,.07)}.eca-cms-admin-actions button{border:0;border-radius:999px;padding:11px 14px;font-weight:650;cursor:pointer}.eca-cms-admin-actions .secondary{background:#fff;color:var(--nf-ink);border:1px solid rgba(42,37,32,.13)}.eca-cms-admin-actions .primary{background:var(--nf-copper,#C46742);color:#fff}.eca-cms-admin-actions label{display:grid;gap:4px;font-size:.65rem;color:var(--nf-ink-mid)}.eca-cms-admin-actions select{max-width:170px;border:1px solid rgba(42,37,32,.15);border-radius:9px;padding:7px;background:#fff}
.eca-cms-admin-toast{position:fixed;z-index:5;left:50%;bottom:95px;transform:translate(-50%,18px);padding:10px 15px;border-radius:999px;background:#3E694E;color:#fff;opacity:0;pointer-events:none;transition:.2s}.eca-cms-admin-toast.bad{background:#A54036}.eca-cms-admin-toast.show{opacity:1;transform:translate(-50%,0)}
.eca-cms-preview{position:fixed;inset:0;z-index:10150;background:rgba(24,21,18,.72);display:grid;place-items:center;padding:18px}.eca-cms-preview-shell{width:min(100%,430px);height:min(94dvh,850px);display:flex;flex-direction:column;border-radius:28px;background:#222;overflow:hidden;box-shadow:0 25px 80px rgba(0,0,0,.35)}.eca-cms-preview-shell>header{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;color:#fff}.eca-cms-preview-shell>header button{border:0;background:transparent;color:#fff;font-size:1.4rem;cursor:pointer}.eca-cms-preview-phone{flex:1;overflow:auto;background:var(--nf-beige,#F5EFE3)}.eca-cms-preview-phone .eca-content-page{padding-bottom:40px}.eca-cms-admin-error,.eca-cms-admin-empty,.eca-cms-admin-loading{max-width:680px;margin:30px auto;padding:22px;border-radius:18px;background:#fff;line-height:1.6}
@media(max-width:760px){.eca-cms-admin-head{grid-template-columns:40px minmax(0,1fr)}.eca-cms-new{grid-column:1/-1;width:100%}.eca-cms-admin-layout{display:block;overflow:hidden}.eca-cms-admin-pages{display:flex;gap:7px;overflow:auto;border-right:0;border-bottom:1px solid rgba(42,37,32,.1);padding:9px}.eca-cms-pages-title{display:none}.eca-cms-page-tab{min-width:170px;margin:0}.eca-cms-admin-main{height:calc(100dvh - 142px);padding:12px 12px calc(166px + env(safe-area-inset-bottom))}.eca-cms-meta,.eca-cms-block-editor{padding:14px;border-radius:16px}.eca-cms-meta-grid,.eca-cms-block-fields{grid-template-columns:1fr}.eca-cms-block-fields label:has(textarea){grid-column:auto}.eca-cms-block-toolbar{align-items:flex-start;flex-direction:column}.eca-cms-block-toolbar>div:last-child{width:100%;display:grid;grid-template-columns:1fr auto}.eca-cms-edit-block>header{align-items:flex-start;flex-direction:column}.eca-cms-block-actions{justify-content:flex-start}.eca-cms-admin-actions{left:0;flex-wrap:wrap;justify-content:center;padding:9px 10px calc(9px + env(safe-area-inset-bottom))}.eca-cms-admin-actions button{flex:1 1 42%;font-size:.76rem}.eca-cms-admin-actions label{flex:1 1 100%}.eca-cms-admin-actions select{max-width:none;width:100%}}


/* PLUS-CMS-M1-C1 — repères des zones fonctionnelles */
.eca-cms-block-toolbar small{display:block;margin-top:4px;color:var(--nf-ink-mid);font-size:.72rem;line-height:1.4}
.eca-cms-slot-field{grid-column:1/-1!important;padding:10px;border-radius:12px;background:rgba(74,123,92,.08);border:1px solid rgba(74,123,92,.16)}
.eca-cms-slot-field select{background:#fff}
.eca-cms-page-tab small{line-height:1.35}

/* PLUS-CMS-M1-C2 — contrôles de mise en forme */
.eca-cms-format{grid-column:1/-1;border:1px solid rgba(42,37,32,.1);border-radius:14px;background:rgba(245,239,227,.62);overflow:hidden}
.eca-cms-format>summary{position:relative;cursor:pointer;list-style:none;padding:12px 42px 12px 14px;font-weight:700;color:var(--nf-ink)}
.eca-cms-format>summary::-webkit-details-marker{display:none}.eca-cms-format>summary:after{content:"+";position:absolute;right:15px;top:50%;transform:translateY(-50%);color:var(--nf-copper);font-size:1.1rem}.eca-cms-format[open]>summary:after{content:"−"}
.eca-cms-format-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0 13px 13px}
.eca-cms-format-grid>label{min-width:0}.eca-cms-format-grid select{width:100%}
.eca-cms-format-toggles{grid-column:1/-1;display:flex;gap:8px;flex-wrap:wrap;padding:5px 0}
.eca-cms-format-toggles label{display:flex;align-items:center;gap:6px;min-height:38px;padding:7px 10px;border:1px solid rgba(42,37,32,.11);border-radius:10px;background:#fff;font-size:.82rem}
.eca-cms-format-toggles input,.eca-cms-color-line input[type="checkbox"]{accent-color:var(--nf-copper,#C46742)}
.eca-cms-color-control{display:grid;gap:6px}.eca-cms-color-line{display:grid;grid-template-columns:auto 44px 1fr;align-items:center;gap:8px;min-height:44px;padding:6px 9px;border:1px solid rgba(42,37,32,.11);border-radius:10px;background:#fff}
.eca-cms-color-line input[type="color"]{width:42px;height:32px;padding:2px;border:1px solid rgba(42,37,32,.15);border-radius:8px;background:#fff}.eca-cms-color-line small{color:var(--nf-ink-mid)}
.eca-cms-format-reset{grid-column:1/-1;justify-self:start;border:1px solid rgba(196,103,66,.28);border-radius:999px;background:#fff;color:var(--nf-copper);padding:9px 12px;cursor:pointer}
@media(max-width:760px){.eca-cms-format-grid{grid-template-columns:1fr}.eca-cms-format-toggles,.eca-cms-format-reset{grid-column:auto}.eca-cms-format-reset{width:100%;justify-self:stretch}.eca-cms-color-line{grid-template-columns:auto 48px 1fr}}
