.carnet-editor-open{align-self:center}
.carnet-editor{width:min(48rem,94vw);max-height:90vh;padding:1.4rem;border:1px solid #a88d65;border-radius:.8rem;background:#211e19;color:#f5ede0;font:1rem/1.5 system-ui;overflow:auto}
.carnet-editor::backdrop{background:#171613b8}
.carnet-editor-head{display:flex;justify-content:space-between;align-items:center;gap:1rem}
.carnet-editor h2{font-size:clamp(1.5rem,4vw,2.4rem);margin:0}
.carnet-editor details{margin:.7rem 0;padding:.8rem;border:1px solid #554b3c}
.carnet-editor summary{cursor:pointer;color:#e4b779}
.carnet-editor label{display:block;margin:.7rem 0}
.carnet-editor input:not([type=checkbox]),.carnet-editor select,.carnet-editor textarea{display:block;width:100%;min-width:0;font:inherit;margin-top:.25rem}
.carnet-editor input[type=color]{height:2.6rem}
.carnet-editor button,.carnet-editor-open{font:inherit;cursor:pointer;padding:.45rem .7rem;border:1px solid #a88d65;border-radius:.3rem;background:#2e271e;color:#f5ede0}
.carnet-editor :focus-visible,.carnet-editor-open:focus-visible{outline:2px solid #e4b779;outline-offset:2px}
.carnet-editor [role=status]{color:#e4b779;min-height:1.5rem}
.carnet-editor-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:0 1rem}
.carnet-editor [hidden]{display:none!important}
.carnet-editor-toolbar{width:min(69rem,90%);margin:.75rem auto;text-align:right}

/* Compact controls below the reading area and a direct jump in the navigation. */
.carnet-editor-toolbar{width:min(69rem,90%);margin:0 auto 1.5rem;padding:.6rem .85rem;text-align:left;background:transparent;border:1px solid var(--ligne,#554b3c);font-size:.9rem}
.carnet-editor-toolbar>summary{color:var(--or,#e4b779)}
.carnet-editor-toolbar-content{display:grid;gap:.65rem;justify-items:start;padding-top:.7rem}
.carnet-editor-toolbar-content>details{width:100%;margin:0;padding:.55rem .7rem}
.carnet-maker-select{align-self:center;max-width:100%;padding:.35rem .5rem;border:1px solid var(--ligne,#554b3c);border-radius:.25rem;background:#211e19;color:var(--texte,#f5ede0);font:inherit}
.carnet-maker-select:focus-visible{outline:2px solid var(--or,#e4b779);outline-offset:2px}

/* Atelier et repère géographique, dans le style du Carnet. */
#couteliers .bio h3{margin:.45rem 0 .7rem}
.carnet-maker-map{display:grid;grid-template-columns:6.5rem minmax(0,1fr);align-items:center;gap:.8rem;margin:.2rem 0 .8rem;padding:.55rem .65rem;border:1px solid var(--ligne);background:var(--fond)}
.carnet-maker-map svg{display:block;width:100%;height:auto}
.carnet-maker-map path{fill:var(--ligne);stroke:var(--or);stroke-width:.8;stroke-linejoin:round}
.carnet-map-halo{fill:var(--or);opacity:.25}
.carnet-map-pin{fill:var(--or);stroke:var(--fond);stroke-width:1.4}
.carnet-maker-map figcaption{font-size:.88rem;line-height:1.4;overflow-wrap:anywhere}
.carnet-maker-map strong{display:block;color:var(--or);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.25rem}

.carnet-main-nav{align-items:center;padding:.85rem 0;border-bottom:1px solid var(--ligne);margin-bottom:1.2rem}
.carnet-maker-photo{margin:.1rem 0 .9rem}
.carnet-maker-photo img{display:block;width:100%;height:clamp(10rem,24vw,15rem);object-fit:contain;background:var(--fond)}
.carnet-maker-photo figcaption{color:var(--or);font-size:.85rem;margin-top:.35rem}
.carnet-maker-notes>div{border-top:1px solid var(--ligne);padding:.7rem 0}
.carnet-maker-notes h4{margin:0 0 .25rem;color:var(--or);font:1.15rem Georgia,serif}
.carnet-maker-notes p{margin:0}

/* Commandes du Carnet : laiton, ivoire et fond brun. */
:root{
  --commande-fond:#2c251d;
  --commande-survol:#3c3023;
  --commande-texte:#f8edda;
  --commande-bord:#92744f;
  --commande-or:#e9be83;
}
button:not(.photo-close), input[type=file]::file-selector-button, select{
  color:var(--commande-texte);
  background:var(--commande-fond);
  border:1px solid var(--commande-bord);
  border-radius:.4rem;
  padding:.52rem .8rem;
  font:inherit;
  cursor:pointer;
}
select option{color:var(--commande-texte);background:var(--commande-fond)}
button:not(.photo-close):not(:disabled):hover,
input[type=file]::file-selector-button:hover,select:hover,
details>summary:hover{
  background:var(--commande-survol);
  border-color:var(--commande-or);
  color:var(--commande-texte);
}
button:not(.photo-close):disabled{opacity:.65;cursor:default}
.carnet-main-nav a,.cta{
  display:inline-block;
  padding:.45rem .75rem;
  color:var(--commande-texte);
  background:var(--commande-fond);
  border:1px solid var(--commande-bord);
  border-radius:.4rem;
  text-decoration:none;
}
.carnet-main-nav a:hover,.cta:hover{background:var(--commande-survol);border-color:var(--commande-or)}
.carnet-main-nav{gap:.55rem}
.carnet-maker-select,.carnet-editor button,.carnet-editor-open{
  color:var(--commande-texte);
  background:var(--commande-fond);
  border-color:var(--commande-bord);
}
details>summary{
  color:var(--commande-or);
  padding:.3rem .5rem;
  border:1px solid transparent;
  border-radius:.35rem;
}
details[open]>summary{background:var(--commande-fond);border-color:var(--commande-bord)}
button:focus-visible,select:focus-visible,summary:focus-visible,a:focus-visible{
  outline:2px solid var(--commande-or);
  outline-offset:3px;
}

.carnet-maker-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,13rem),1fr));gap:1rem}
.carnet-maker-tile{display:grid;align-content:start;gap:.55rem;padding:.8rem;border:1px solid var(--ligne);border-radius:.5rem;background:var(--commande-fond);color:var(--texte);text-decoration:none;scroll-margin-top:1rem}
.carnet-maker-tile:hover,.carnet-maker-tile:target{border-color:var(--commande-or);background:var(--commande-survol)}
.carnet-maker-tile strong{font:1.15rem Georgia,serif;color:var(--or)}
.carnet-maker-tile>span:last-child{font-size:.82rem}
.carnet-maker-tile img,.carnet-maker-initials{width:100%;height:7rem;border-radius:.25rem;background:var(--fond);object-fit:contain}
.carnet-maker-initials{display:grid;place-items:center;font:2rem Georgia,serif;color:var(--or)}
.carnet-maker-gallery~.bios,.carnet-maker-pager{display:none}
.carnet-maker-page main>section:not(#couteliers,.hero),
.carnet-maker-page #couteliers>:not(.bios,.carnet-maker-pager),
.carnet-maker-page .bios>.bio:not(.carnet-maker-current){display:none}
.carnet-maker-page main{width:min(54rem,92%);margin:1.25rem auto}
.carnet-maker-page #couteliers{padding:0;border:0}
.carnet-maker-page #couteliers>.bios{display:block}
.carnet-maker-page .carnet-maker-current h3{font-size:clamp(2rem,5vw,3.2rem)}
.carnet-maker-page .carnet-maker-current .carnet-maker-map{grid-template-columns:minmax(5rem,9rem) minmax(0,1fr)}
.carnet-maker-page .carnet-maker-photo img{height:clamp(12rem,45vw,24rem)}
.carnet-maker-page .carnet-maker-pager{display:flex;justify-content:space-between;gap:.65rem;flex-wrap:wrap;margin-top:1rem}
.carnet-maker-pager a{padding:.45rem .75rem;border:1px solid var(--commande-bord);border-radius:.4rem;background:var(--commande-fond);color:var(--commande-texte);text-decoration:none}
.carnet-maker-pager a:hover{background:var(--commande-survol)}

.carnet-maker-sources{margin:.85rem 0 0;padding:.35rem .5rem;font-size:.85rem}
.carnet-maker-sources .sources{margin:.35rem 0 .55rem}
.carnet-maker-contacts{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.9rem;padding-top:.85rem;border-top:1px solid var(--ligne)}
.carnet-maker-contacts a{padding:.4rem .7rem;border:1px solid var(--commande-bord);border-radius:.4rem;background:var(--commande-fond);color:var(--commande-texte);text-decoration:none}
.carnet-maker-contacts a:hover{background:var(--commande-survol);border-color:var(--commande-or)}
