/* Shared hierarchy for viewing and composing an event. */
.event-detail,.activity-dialog{--event-title:30px;--event-heading:16px;--event-body:13px;--event-meta:12px}
.event-detail h2.event-heading,.event-detail .event-heading h2,.activity-dialog .composer-heading h2{font-size:var(--event-title);font-weight:700;line-height:1.25;letter-spacing:-.6px}
.event-detail h3,.event-detail h4,.activity-dialog h3{font-size:var(--event-heading);font-weight:700;line-height:1.45;letter-spacing:0}
.event-detail p,.event-detail li,.event-detail .event-facts>div,.activity-dialog p,.activity-dialog label,.activity-dialog input,.activity-dialog textarea,.activity-dialog select{font-size:var(--event-body);line-height:1.65;font-weight:400}
.event-detail button,.event-detail .btn,.activity-dialog button{font-size:var(--event-meta);font-weight:600;letter-spacing:0}
.event-detail small,.event-detail time,.event-detail .event-state,.event-detail .event-sport{font-size:var(--event-meta);line-height:1.5}
.event-detail .event-sport{font-weight:600;background:#f1f6e4;border-radius:20px}
.event-detail .event-heading{align-items:center}.event-detail .event-heading h2{margin:12px 0 18px}
.event-detail .event-hero>img{height:280px}.event-detail .event-hero,.event-detail .event-hero>img{border-radius:12px}
.event-detail .event-content>section>h3::before{display:none}
.event-detail .event-content>section{padding:22px 0}
.event-detail .event-booking{background:#fff;border-top:3px solid #C7EF45;box-shadow:none;border-radius:12px;padding:22px}
.event-detail .event-booking h3{font-size:24px;font-weight:700;margin-bottom:2px}
.event-detail .event-booking>strong{font-weight:600}.event-detail .event-booking .btn{box-shadow:none;font-weight:700}
.event-detail .event-confirmation{padding:20px!important;border-radius:12px}.event-detail .event-confirmation::after{display:none}
.event-detail .event-confirmation h3{font-size:var(--event-heading)}
.event-detail .event-step{gap:10px}.event-detail .event-step h4{font-size:var(--event-meta);font-weight:600;margin:0}.event-detail .event-steps{margin:18px 0 12px}
.event-detail .event-step-icon{width:38px;height:38px}.event-detail .event-step-icon svg{width:20px;height:20px}.event-detail .event-step-arrow{padding-top:8px}
.event-disclosure>summary{cursor:pointer;font-size:13px;font-weight:600;line-height:1.6;padding:8px 0;list-style-position:outside;margin-left:16px}
.event-disclosure[open]>summary{margin-bottom:12px}.event-confirmation .event-disclosure{border-top:1px solid #ffffff25;padding-top:6px}.event-confirmation .event-disclosure summary{color:#fff}
.event-detail .event-disclaimer{background:transparent;margin-top:0;padding:10px 0!important;border-radius:0}.event-detail .event-disclaimer p{font-size:12px;line-height:1.7}
.event-detail .event-equipment-list{gap:14px}.event-detail .event-equipment-link{font-weight:600;background:#f6f9ef;border:0}.event-detail .event-equipment-link span{font-size:12px}
.event-detail .event-chat-heading>svg{background:none;width:25px;height:25px;padding:0}.event-detail .event-chat-heading p{font-size:13px}
.event-detail .event-split>section{padding:18px!important}.event-detail .event-split>section>h3{font-size:16px;line-height:24px}.event-detail .event-split>section>strong{font-size:16px;font-weight:600}
.activity-dialog .composer-heading .composer-subtitle,.activity-dialog .composer-block>p,.activity-dialog .composer-intro{font-size:13px}
.activity-dialog .composer-steps{font-size:12px}.activity-dialog .composer-block h3,.activity-dialog .composer-section h3{font-size:16px;letter-spacing:0;font-weight:700}
.activity-dialog .composer-heading h2 span{color:inherit}.activity-dialog .composer-subtitle{display:none}.activity-dialog .composer-controls .btn,.activity-dialog .composer-draft{font-size:13px;font-weight:600}
@media(max-width:650px){.event-detail,.activity-dialog{--event-title:25px}.event-detail .event-hero>img{height:210px}.activity-dialog input,.activity-dialog select,.activity-dialog textarea{font-size:16px}.event-detail .event-step{align-items:center}.event-detail .event-step-arrow{padding:0}}
.event-delete-button{color:#9e3030!important;border:1px solid #9e303044!important;background:#fff!important}.event-admin-controls p{font-size:12px}#delete-event-form input{display:block;width:100%;padding:12px;border:1px solid #244b6333;border-radius:8px;margin:10px 0;font:inherit}
/* Match the actual form as well as its class: queued dialog close events must not collapse it. */
dialog#detail:has(#activity-composer){width:min(1200px,96vw);max-width:1200px;max-height:94dvh;height:auto;margin:auto;padding:28px;background:#f8fafb;overflow:auto;box-sizing:border-box}#detail:has(#activity-composer) #dialog-content{width:100%;min-width:0;padding:0}#detail:has(#activity-composer) .composer-layout{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:28px;align-items:start}#detail:has(#activity-composer) .composer-layout>*{min-width:0}#detail:has(#activity-composer) .composer-layout>.flow-form{width:100%;min-width:0}#detail:has(#activity-composer) .composer-sports{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}#detail:has(#activity-composer) .composer-controls{display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;bottom:-28px;padding:16px 0;background:#f8fafb}#detail:has(#activity-composer) input,#detail:has(#activity-composer) select,#detail:has(#activity-composer) textarea{max-width:100%;min-height:44px;box-sizing:border-box}#detail:has(#activity-composer) textarea{min-height:100px}#detail:has(#activity-composer) .composer-heading{padding-right:24px}#detail:has(#activity-composer) .composer-heading h2{font-size:30px;line-height:1.25}#detail:has(#activity-composer) .composer-summary{position:static;width:100%;max-width:none}#detail:has(#activity-composer) .summary-body{padding:18px}#detail:has(#activity-composer) .composer-block{min-width:0}#detail:has(#activity-composer) .form-grid>*{min-width:0}@media(max-width:1000px){#detail:has(#activity-composer) .composer-layout{grid-template-columns:minmax(0,1fr)}#detail:has(#activity-composer) #composer-summary{max-width:520px;width:100%;justify-self:center}#detail:has(#activity-composer) .composer-team-grid,#detail:has(#activity-composer) .composer-venue-layout{grid-template-columns:1fr}}@media(max-width:650px){dialog#detail:has(#activity-composer){width:100vw;max-width:100vw;max-height:100dvh;padding:22px 14px;border-radius:0}#detail:has(#activity-composer) .composer-sports{grid-template-columns:repeat(2,minmax(0,1fr))}#detail:has(#activity-composer) .form-grid,#detail:has(#activity-composer) .composer-cost-grid{grid-template-columns:1fr}#detail:has(#activity-composer) .composer-controls{bottom:-22px;gap:8px}#detail:has(#activity-composer) .composer-controls button{flex:1 1 140px}#detail:has(#activity-composer) input,#detail:has(#activity-composer) select,#detail:has(#activity-composer) textarea{font-size:16px}}
#detail:has(#activity-composer) .composer-choice{display:flex;flex-wrap:wrap;gap:6px;padding:5px;border:1px solid #244b632e;border-radius:12px;background:#f4f7f9;min-width:0}#detail:has(#activity-composer) .composer-choice button{flex:1 1 100px;min-height:44px;padding:10px 14px;border:1px solid transparent;border-radius:8px;background:transparent;color:#244B63;font-size:13px;line-height:1.4;white-space:normal}#detail:has(#activity-composer) .composer-choice button[aria-pressed=true]{background:#C7EF45;border-color:#9cbb35;color:#17384B;font-weight:700;box-shadow:0 1px 3px #244b6310}#detail:has(#activity-composer) .composer-choice button:hover{border-color:#8ca63c}#detail:has(#activity-composer) .composer-choice button:focus-visible{outline:3px solid #244B63;outline-offset:2px}.composer-sports button>span{color:#447792;background:#edf5fa;border-radius:12px;padding:10px;display:inline-flex}.composer-sports button[data-composer-sport="Running"]>span,.composer-sports button[data-composer-sport="Ciclismo"]>span,.composer-sports button[data-composer-sport="Senderismo"]>span{color:#608224;background:#eff5df}.composer-sports button[data-composer-sport="Yoga"]>span,.composer-sports button[data-composer-sport="Pilates"]>span,.composer-sports button[data-composer-sport="Baile"]>span{color:#866982;background:#f4edf4}.composer-sports button[data-composer-sport="Pádel"]>span,.composer-sports button[data-composer-sport="Tenis"]>span,.composer-sports button[data-composer-sport="Ráquetbol"]>span{color:#8b6a2d;background:#f6f0e3}.composer-sports button[aria-pressed=true]{border-color:#91ac32!important;background:#f5f9e9!important}.composer-sports button[aria-pressed=true]>span{background:#C7EF45;color:#244B63}
