.book-selection-tools{display:flex;flex-wrap:wrap;gap:12px;align-items:center;margin:18px 0;padding:16px;border:1px solid currentColor;border-radius:8px}.book-selection-tools label{display:flex;align-items:center;gap:8px;max-width:100%}.book-selection-tools select{max-width:100%;background:var(--bg,#181818);color:inherit;border:1px solid currentColor;padding:10px;font:inherit}.book-selection-tools button,.photo-favorite{font:inherit;padding:9px 12px;border:1px solid currentColor;background:transparent;color:inherit;cursor:pointer;border-radius:5px}.book-selection-tools p,.book-selection-tools textarea{flex-basis:100%;margin:0;font-size:13px;line-height:1.5}.book-selection-tools textarea{min-height:120px;width:100%;color:inherit;background:transparent}.photo-information{margin:12px 0;max-width:700px;font-size:14px}.photo-information summary{cursor:pointer;padding:10px;border:1px solid currentColor;border-radius:5px}.photo-information dl{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;padding:10px;max-height:180px;overflow:auto}.photo-information dt{font-weight:bold}.photo-information dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.photo-stamp{display:block;font-size:12px;line-height:1.4;margin-top:5px;opacity:.85}.album-grid figure[hidden]{display:none!important}.album-lightbox>.photo-information,.album-lightbox>.photo-favorite{position:relative;z-index:5;background:var(--bg,#171717);color:inherit;margin:8px auto;max-width:min(90vw,700px)}.album-lightbox:target{overflow-y:auto!important}.favorites-count{white-space:nowrap}.book-selection-tools :focus-visible,.photo-information summary:focus-visible,.photo-favorite:focus-visible{outline:3px solid #c99e6d;outline-offset:3px}@media(max-width:600px){.book-selection-tools{padding:12px;gap:10px}.book-selection-tools label{width:100%}.book-selection-tools select{flex:1;min-width:0}.photo-information dl{grid-template-columns:1fr;gap:4px}.photo-information dd{margin-bottom:8px}}@media(prefers-reduced-motion:reduce){.book-selection-tools *{scroll-behavior:auto}}

.private-card[hidden]{display:none!important}#privateViewer .photo-information,#privateViewer .photo-favorite{color:inherit;margin:10px auto}#privateViewer{overflow-y:auto;max-height:95dvh}
/* V69 : la zone image utilise l'espace restant ; les commandes restent sur une ligne. */
#viewer[open]{display:grid!important;place-items:center;padding:calc(52px + env(safe-area-inset-top,0px)) 12px calc(10px + env(safe-area-inset-bottom,0px));height:100dvh;overflow:hidden}
#viewer figure,#viewer.with-filmstrip figure{display:grid!important;grid-template-rows:minmax(0,1fr) auto auto auto;gap:5px;width:100%;height:100%;min-height:0;max-width:1100px;align-items:stretch;margin:0}
#viewer #large,#viewer.with-filmstrip #large{width:100%;height:100%;min-height:0;max-height:none!important;object-fit:contain;align-self:stretch;margin:0}
#viewer figcaption{display:flex;justify-content:center;flex-wrap:wrap;gap:3px 9px;padding:4px 44px!important;font-size:13px;line-height:1.35;max-height:76px;overflow:auto;text-align:center}
#viewer #caption{flex-basis:100%;font-size:14px}#viewer #credit{font-size:12px}#viewer .close{top:calc(6px + env(safe-area-inset-top,0px));right:10px;min-height:44px;padding:8px 12px;font-size:13px}#viewer .nav{top:45%;width:44px;height:56px;font-size:34px;transform:translateY(-50%);opacity:.9}#viewer .prev{left:7px}#viewer .next{right:7px}
.viewer-tools{position:relative;display:flex;justify-content:center;align-items:center;gap:6px;width:100%;flex-wrap:nowrap;z-index:6;padding:0 5px}
.viewer-tools .photo-information{position:static!important;margin:0!important;max-width:none;font-size:13px;background:transparent!important;color:#eee!important}
.viewer-tools .photo-information summary,.viewer-tools .photo-favorite,.viewer-tools .thumbnail-toggle{display:flex;align-items:center;justify-content:center;min-height:44px;max-height:none;margin:0!important;padding:8px 10px!important;font:13px Arial,sans-serif;white-space:nowrap;border:1px solid #a58e71;border-radius:5px;background:#242020;color:#eee;cursor:pointer}
.viewer-tools .photo-information summary{list-style:none}.viewer-tools .photo-information summary::-webkit-details-marker{display:none}
.viewer-tools .photo-information[open] summary{background:#51422f}
.viewer-tools .photo-information dl{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translateX(-50%);width:min(90vw,640px);max-height:min(45dvh,340px);margin:0;padding:16px;background:#19191bf5;color:#eee;border:1px solid #a58e71;border-radius:8px;box-shadow:0 8px 35px #000b;overflow:auto;z-index:30;text-align:left;display:grid;grid-template-columns:auto minmax(0,1fr);gap:8px 14px;box-sizing:border-box}
.close-photo-information{grid-column:1/-1;min-height:44px;margin-top:4px;padding:8px;color:inherit;background:transparent;border:1px solid #a58e71;border-radius:5px;cursor:pointer}
.viewer-filmstrip{margin:0 auto!important;padding:0 5px!important;width:100%;min-width:0;max-width:1100px}.viewer-filmstrip[hidden]{display:none!important}.viewer-thumbnails{padding:2px 4px 4px}.viewer-thumbnails button{flex:0 0 52px;width:52px;min-width:52px;height:52px}
.album-lightbox:target{display:grid!important;grid-template-rows:auto minmax(0,1fr) auto auto;height:100dvh;overflow:hidden!important;padding:env(safe-area-inset-top,0px) 0 env(safe-area-inset-bottom,0px);gap:5px}
.album-lightbox .lightbox-top{padding:6px 12px;gap:8px;min-height:50px}.album-lightbox .lightbox-close{min-height:44px;padding:8px 10px;font-size:13px}
.album-lightbox .lightbox-body{display:block;position:relative;width:100%;height:100%;min-height:0;padding:0 8px;max-width:1100px}
.album-lightbox .lightbox-body figure{display:grid;grid-template-rows:minmax(0,1fr) auto;height:100%;width:100%;min-height:0;margin:0}
.album-lightbox .lightbox-body figure>img,.album-lightbox.with-filmstrip .lightbox-body figure>img{width:100%;height:100%;max-height:none!important;min-height:0;object-fit:contain}
.album-lightbox figcaption{padding:5px 45px;max-height:70px;overflow:auto;font-size:12px;line-height:1.35}.album-lightbox .lightbox-arrow{position:absolute;top:45%;transform:translateY(-50%);width:44px;height:56px;font-size:34px;z-index:5;background:#242020d9}.album-lightbox .lightbox-arrow:first-child{left:7px}.album-lightbox .lightbox-arrow:last-child{right:7px}.album-lightbox>.viewer-tools{margin:0 0 5px;max-width:1100px;justify-self:center}
#privateViewer[open]{display:grid;grid-template-rows:minmax(0,1fr) auto auto auto auto;justify-items:center;padding:12px;height:100dvh;gap:5px;overflow:hidden}#privateViewer #privateImage{width:100%;height:100%;max-height:none;min-height:0;object-fit:contain}#privateViewer #privateCaption{margin:0;font-size:12px;max-height:64px;overflow:auto}#privateViewer .viewer-tools{grid-row:4}#privateViewer .controls{grid-row:5}#privateViewer #privateLoading{margin:0;min-height:0;font-size:12px}
@media(max-width:680px){.viewer-tools .photo-information summary,.viewer-tools .photo-favorite,.viewer-tools .thumbnail-toggle{padding:7px 8px!important;font-size:12px}.viewer-tools{gap:5px}.viewer-tools .photo-information dl{grid-template-columns:1fr;gap:4px;padding:12px}.viewer-tools .photo-information dd{margin-bottom:7px}.album-lightbox .lightbox-top>span{font-size:12px}.viewer-thumbnails button{flex-basis:48px;width:48px;min-width:48px;height:48px}#viewer figcaption{padding-inline:35px!important}}
@media(max-height:480px){#viewer[open]{padding-top:48px;padding-bottom:5px}.viewer-tools .photo-information summary,.viewer-tools .photo-favorite,.viewer-tools .thumbnail-toggle{min-height:36px;padding:5px 9px!important}#viewer #caption{flex-basis:auto}#viewer figcaption{max-height:38px;padding:2px 44px!important}.viewer-thumbnails button{width:38px;min-width:38px;flex-basis:38px;height:38px}.album-lightbox .lightbox-top{min-height:40px;padding:2px 8px}.album-lightbox .lightbox-close{min-height:36px}.album-lightbox figcaption{max-height:34px;padding-block:2px}}
.album-lightbox:target{background:#0b0b0b!important}.viewer-tools .photo-information{order:0}.viewer-tools .photo-favorite{order:1}.viewer-tools .thumbnail-toggle{order:2}

/* V71 — commandes de plein écran et mode immersif. */
.photo-fullscreen{position:absolute;z-index:12;left:max(10px,env(safe-area-inset-left,0px));top:calc(6px + env(safe-area-inset-top,0px));display:flex;align-items:center;gap:7px;min-height:44px;min-width:44px;padding:8px 12px;border:1px solid #c7a77c;border-radius:5px;background:#29231ef2;color:#fff;font:600 13px Arial,sans-serif;cursor:pointer}
.photo-fullscreen>span:first-child{font-size:23px;line-height:1}.photo-fullscreen:focus-visible{outline:3px solid #f2ca90;outline-offset:2px}
.album-lightbox .lightbox-top{padding-left:180px}.immersive-note{display:none}
html.photo-immersive-active{overflow:hidden}
#viewer.photo-immersive[open],#privateViewer.photo-immersive[open],.album-lightbox.photo-immersive:target{padding:0!important;gap:0!important;height:100dvh!important;max-height:none!important;width:100%!important;overflow:hidden!important;background:#050505!important}
#viewer.photo-immersive figure,#privateViewer.photo-immersive{grid-template-rows:minmax(0,1fr)!important;height:100%!important;max-width:none!important;width:100%!important;margin:0!important;gap:0!important;min-height:0}
#viewer.photo-immersive #large,#privateViewer.photo-immersive #privateImage,.album-lightbox.photo-immersive .lightbox-body img{width:100%!important;height:100%!important;max-height:none!important;object-fit:contain!important;min-height:0}
.photo-immersive figcaption,.photo-immersive>.viewer-tools,.photo-immersive figure>.viewer-tools,.photo-immersive .viewer-filmstrip,.photo-immersive #privateCaption,.photo-immersive #privateLoading{display:none!important}
.album-lightbox.photo-immersive:target{grid-template-rows:minmax(0,1fr)!important}.album-lightbox.photo-immersive .lightbox-top{position:absolute;top:0;left:0;right:0;z-index:10;background:transparent;border:0;min-height:50px;padding-right:10px}.album-lightbox.photo-immersive .lightbox-top>span{display:none}.album-lightbox.photo-immersive .lightbox-body{height:100%;max-width:none!important}.album-lightbox.photo-immersive .lightbox-body figure{height:100%;grid-template-rows:minmax(0,1fr)!important;max-width:none}
.photo-immersive .immersive-note{display:block;position:absolute;z-index:11;bottom:calc(6px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);margin:0;padding:5px 10px;border-radius:5px;background:#151515b8;color:#ddd;font:12px Arial,sans-serif;pointer-events:none;white-space:nowrap}
#privateViewer.photo-immersive .controls{position:absolute;inset:auto 10px 32px;display:flex;justify-content:center;z-index:10;background:#151515b8;padding:5px}
.photo-controls-hidden .photo-fullscreen,.photo-controls-hidden>.close,.photo-controls-hidden>.nav,.photo-controls-hidden .lightbox-top,.photo-controls-hidden .lightbox-arrow,.photo-controls-hidden .controls,.photo-controls-hidden .immersive-note{opacity:0;pointer-events:none}
@media(max-width:680px){.photo-fullscreen{padding:7px 9px}.photo-fullscreen .fullscreen-label{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.album-lightbox .lightbox-top{padding-left:65px}}
@media(prefers-reduced-motion:no-preference){.photo-fullscreen,.photo-immersive>.close,.photo-immersive>.nav,.photo-immersive .lightbox-top,.photo-immersive .lightbox-arrow,.photo-immersive .controls{transition:opacity .18s ease}}

/* V71 — éviter un élargissement de page par les titres et champs longs. */
html,body{max-width:100%}body{overflow-x:clip}
main,.intro-content,.section-header>div,.book-selection-tools label{min-width:0}
.book-selection-tools select{min-width:0;max-width:100%}
.section-header h2,.contact h2{overflow-wrap:anywhere}
@media(max-width:680px){.intro h1{font-size:clamp(52px,16vw,80px);overflow-wrap:anywhere}.section-header h2{font-size:clamp(32px,9vw,44px)}.book-selection-tools label{flex-wrap:wrap}.book-selection-tools select{width:100%;flex-basis:100%}}

/* V71 — préférence de légendes commune au book et au lecteur. */
.viewer-tools .caption-toggle{order:3;display:flex;align-items:center;justify-content:center;min-height:44px;margin:0;padding:8px 10px;font:13px Arial,sans-serif;white-space:nowrap;border:1px solid #a58e71;border-radius:5px;background:#242020;color:#eee;cursor:pointer}
.caption-toggle[aria-pressed=false]{border-style:dashed;color:#c4b9aa}
.photo-captions-hidden #grid .card>.overlay,.photo-captions-hidden #album-grid figcaption,.photo-captions-hidden .album-lightbox figcaption,.photo-captions-hidden #viewer figcaption,.photo-captions-hidden #privateCaption{display:none!important}
.photo-captions-hidden #viewer figure,.photo-captions-hidden #viewer.with-filmstrip figure{grid-template-rows:minmax(0,1fr) auto auto}
@media(max-width:680px){.viewer-tools .caption-toggle{font-size:12px;padding:7px 8px}}
@media(max-height:480px){.viewer-tools .caption-toggle{min-height:36px;padding:5px 9px}}
.album-lightbox.photo-immersive.with-filmstrip .lightbox-body figure>img{max-height:none!important}
.album-lightbox.photo-immersive .lightbox-top{justify-content:flex-end}
.photo-fullscreen{margin:0}.caption-preference input[type=checkbox]{width:auto;flex:none}

.photo-fullscreen-surface{display:contents}.photo-fullscreen-surface:fullscreen{display:grid;grid-template-rows:minmax(0,1fr);position:fixed;inset:0;width:100%;height:100%;padding:0;background:#050505;color:#fff;overflow:hidden}
.photo-controls-hidden .close,.photo-controls-hidden .nav{opacity:0;pointer-events:none}
.photo-immersive .viewer-tools{display:none!important}
@media(max-width:680px){.series-card:has(.series-album-link){min-height:0}}
