/* Un accès discret au-dessus du visuel, utilisable aussi sans JavaScript. */
.colo-stay-hero .event-share-cover { grid-area: image; min-width: 0; }
.colo-stay-hero:not(.colo-hero-with-image) { grid-template-areas: "share" "heading" "teaser" "actions"; grid-template-rows: auto; }
.colo-stay-hero:not(.colo-hero-with-image) .event-share-cover { grid-area: share; max-width: none; }
.event-share-cover > .event-share { margin: 0 0 .8rem auto; }
.event-share { position: relative; width: max-content; max-width: 100%; color: #173a32; font-size: .88rem; line-height: 1.5; }
.event-share > summary { display: flex; align-items: center; justify-content: center; gap: .55rem; min-height: 44px; padding: .6rem 1rem; border: 1px solid #173a3240; border-radius: 999px; background: #fff; cursor: pointer; list-style: none; font-weight: 700; }
.event-share > summary::-webkit-details-marker { display: none; }
.event-share > summary svg { width: 19px; height: 19px; flex: 0 0 auto; }
.event-share > summary:hover, .event-share[open] > summary { background: #edf4ef; border-color: #173a32; }
.event-share-chevron { display: inline-block; }
.event-share[open] .event-share-chevron { transform: rotate(180deg); }
.event-share-panel { position: absolute; z-index: 20; top: calc(100% + .5rem); right: 0; width: min(19rem, calc(100vw - 2rem)); padding: 1rem; border: 1px solid #173a3226; border-radius: 16px; background: #fff; box-shadow: 0 12px 36px #173a3226; box-sizing: border-box; }
.colo-shell .event-share-heading { margin: 0 0 .6rem; font-size: .88rem; font-weight: 700; }
.event-share-options { display: grid; gap: .15rem; list-style: none; padding: 0; margin: 0; }
.event-share-options a, .event-share-options button { display: flex; align-items: center; gap: .65rem; width: 100%; min-height: 44px; box-sizing: border-box; padding: .6rem .65rem; border: 0; border-radius: 8px; color: #173a32; background: transparent; text-decoration: none; font: inherit; text-align: left; cursor: pointer; }
.event-share-options a:hover, .event-share-options button:hover { background: #edf4ef; }
.event-share-symbol { display: grid; place-items: center; width: 1.7rem; height: 1.7rem; flex: 0 0 auto; border-radius: 50%; background: #edf4ef; font-weight: 700; }
.event-share-link { margin-top: .7rem; padding-top: .9rem; border-top: 1px solid #173a3226; }
.event-share-link label { display: block; font-size: .76rem; margin-bottom: .4rem; }
.event-share-link input { display: block; width: 100%; min-width: 0; min-height: 44px; padding: .5rem; box-sizing: border-box; border: 1px solid #173a3240; border-radius: 8px; color: #173a32; background: #faf9f4; font: inherit; font-size: 16px; }
.event-share-copy { display: block; width: 100%; min-height: 44px; margin-top: .5rem; padding: .6rem; border: 1px solid #173a32; border-radius: 8px; color: #fff; background: #173a32; font: inherit; font-weight: 700; cursor: pointer; }
.event-share button:disabled { opacity: .6; cursor: wait; }
.event-share [hidden] { display: none !important; }
.colo-shell .event-share-feedback { margin: .5rem 0 0; color: #52685d; font-size: .76rem; }
.event-share-feedback:empty { display: none; }
.event-share input:focus-visible { outline: 3px solid #a23d28; outline-offset: 3px; }
.event-share-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); white-space: nowrap; }
.colo-bottom-links .event-share-panel { top: auto; bottom: calc(100% + .5rem); }
@media (max-width: 620px) {
  .colo-bottom-links > .event-share { margin-left: auto; }
}
@media print { .event-share { display: none !important; } }
