.share-controls{display:flex;flex-wrap:wrap;align-items:center;gap:14px;margin:28px 0;grid-column:1/-1}.share-controls>a,.share-menu a{color:inherit;text-underline-offset:4px}.share-trigger,.share-menu button{border:1px solid #eb68ac;border-radius:24px;padding:10px 18px;background:transparent;color:inherit;font:inherit;cursor:pointer}.share-trigger:hover,.share-menu button:hover{background:#eb68ac;color:#0b0b30}.share-menu{flex-basis:100%;display:flex;flex-wrap:wrap;align-items:center;gap:18px;padding:18px;border:1px solid #ffffff55;border-radius:12px}.share-menu[hidden]{display:none}.share-controls :focus-visible{outline:3px solid #ffc848;outline-offset:4px}.share-menu input{max-width:100%;color:#111;background:#fff}.share-page-navigation{display:flex;flex-wrap:wrap;gap:20px;margin:30px 0}.share-page-navigation>a{color:inherit}.share-page-title{font-size:clamp(2rem,5vw,3.6rem);line-height:1.15}.share-page-title{display:block}
.story-trigger{border:1px solid #eb68ac;border-radius:24px;padding:10px 18px;background:#eb68ac;color:#0b0b30;font:inherit;cursor:pointer}.story-dialog{background:#0b0b30;color:white;border:1px solid #eb68ac;border-radius:16px;width:min(540px,calc(100% - 32px));max-height:90dvh;overflow:auto;padding:24px;box-sizing:border-box}.story-dialog::backdrop{background:#000b}.story-dialog h2{font-size:1.4rem}.story-preview{display:block;width:auto;max-width:100%;max-height:52vh;margin:18px auto}.story-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:14px}.story-actions a,.story-actions button,.story-close{font:inherit;border:1px solid #ffc848;border-radius:22px;background:transparent;color:white;padding:10px 16px;cursor:pointer;text-decoration:none}.story-close{float:right}.story-dialog :focus-visible{outline:3px solid #ffc848;outline-offset:3px}

.share-menu .share-social{display:inline-flex;align-items:center;justify-content:center;flex:0 0 48px;width:48px;height:48px;box-sizing:border-box;padding:0;border:1px solid #ffffff70;border-radius:50%;background:transparent;color:inherit;text-decoration:none}
.share-menu .share-social svg{display:block;width:24px;height:24px;fill:currentColor}
.share-menu .share-social:hover{background:#eb68ac;border-color:#eb68ac;color:#0b0b30}

.festival-share{justify-content:center;width:100%;margin:20px auto 30px}.festival-share .share-menu{justify-content:center;max-width:500px;box-sizing:border-box}footer>.festival-share{flex-basis:100%;grid-column:1/-1}.festival-share .share-trigger{font-size:15px}
