/* Ordinary event detail: shared type scale and spacing, scoped away from lists/features. */
#kisopass-events-prototype .ep-detail-active{--ep-ink:#173c43;--ep-muted:#405b55;--ep-line:#c4d3c7;--ep-paper:#fffefa;background:#f3f1e8;font-size:1rem}
#kisopass-events-prototype .ep-detail-active .ep-top{background:#fffdf6;border:0;border-bottom:1px solid #cbd8cf;padding:8px 18px;gap:12px}
#kisopass-events-prototype .ep-detail-active .ep-brand{order:2;flex:1;text-align:center;font-size:1.25rem;color:#075f65;letter-spacing:.02em}
#kisopass-events-prototype .ep-detail-active .locale-menu-button{order:3;flex:none}
#kisopass-events-prototype .ep-detail-active .ep-brand::after,#kisopass-events-prototype .ep-detail-active .ep-brand-section{display:none}
#kisopass-events-prototype .ep-detail-active .ep-close{order:1;flex:0 0 44px;min-width:44px;min-height:44px;width:44px;height:44px;background:transparent;color:#075f65;font-size:2.2rem;font-weight:400;border-radius:8px}
#kisopass-events-prototype .ep-detail-active .ep-main{max-width:660px;padding:20px 20px max(36px,env(safe-area-inset-bottom));scrollbar-gutter:stable}
#kisopass-events-prototype .ep-detail{font-size:1.125rem;line-height:1.7;font-weight:500}
#kisopass-events-prototype .ep-detail-kicker{display:flex;justify-content:space-between;align-items:center;gap:16px;margin:0 0 12px}
#kisopass-events-prototype .ep-detail-kicker p{margin:0;font-size:1rem;line-height:1.5}
#kisopass-events-prototype .ep-phase{flex:none;padding:5px 12px;border-radius:18px;background:#ffe49b;font-size:.9375rem;line-height:1.5;font-weight:600}
#kisopass-events-prototype .ep-detail h3[data-detail-title]{font-size:1.875rem;line-height:1.35;font-weight:750;letter-spacing:.01em;margin:0 0 16px;word-break:normal;overflow-wrap:anywhere}
#kisopass-events-prototype .ep-detail-datetime{display:flex;flex-wrap:wrap;gap:8px 20px;margin:0 0 22px;font-size:1rem;line-height:1.5;font-weight:500;font-variant-numeric:tabular-nums}
#kisopass-events-prototype .ep-detail-datetime p{display:flex;align-items:flex-start;gap:8px;margin:0;min-width:0}
#kisopass-events-prototype .ep-icon{display:inline-block;flex:none;width:22px;height:22px;color:#08737a;vertical-align:middle}
#kisopass-events-prototype .ep-detail .ep-poster{width:100%;margin:0;background:#fffefa;border:0;border-radius:10px;box-shadow:0 4px 18px #173c430a}
#kisopass-events-prototype .ep-detail .ep-poster img{background:#fffefa}
#kisopass-events-prototype .ep-detail .ep-poster span{padding:10px 16px;font-size:.9375rem;line-height:1.5}
#kisopass-events-prototype .ep-feature-poster{position:relative;overflow:hidden}
#kisopass-events-prototype .ep-detail .ep-feature-poster .ep-poster-preview{position:absolute;top:24px;left:-42px;width:180px;padding:7px 0;transform:rotate(-35deg);background:#c52a32;color:#fff;font-size:22px;font-weight:800;letter-spacing:.12em;line-height:1.4;text-align:center;box-shadow:0 3px 8px #0004;pointer-events:none}
#kisopass-events-prototype .ep-detail .ep-image-caption{margin:12px 0 28px;font-size:.9375rem;line-height:1.6;color:var(--ep-muted)}
#kisopass-events-prototype .ep-venue-block{margin:24px 0 0;padding:20px;background:#fff;border:1px solid #d2ddd5;border-radius:10px}
#kisopass-events-prototype .ep-venue-heading{display:flex;align-items:flex-start;gap:12px}
#kisopass-events-prototype .ep-venue-heading .ep-icon{width:28px;height:28px;margin-top:2px}
#kisopass-events-prototype .ep-venue-heading>div{min-width:0}
#kisopass-events-prototype .ep-venue-heading h4{font-size:1.25rem;line-height:1.5;font-weight:700;margin:0}
#kisopass-events-prototype .ep-venue-heading p{font-size:1rem;line-height:1.7;margin:8px 0 0}
#kisopass-events-prototype .ep-venue-block .ep-map-link{display:flex;width:100%;min-height:48px;margin:20px 0 0;padding:10px 16px;background:transparent;color:#08737a;border-color:#a5c8c5;font-size:1rem;font-weight:600}
#kisopass-events-prototype .ep-venue-block .ep-map-link:hover{background:#edf7f3}
#kisopass-events-prototype .ep-detail .ep-description{font-size:1.125rem;line-height:1.8;margin:24px 0 0;white-space:pre-line}
#kisopass-events-prototype .ep-event-summary .ep-description{margin-top:0}
#kisopass-events-prototype .ep-event-price{font-size:1rem;line-height:1.7;margin:20px 0 0}
#kisopass-events-prototype .ep-shop-section{margin:24px 0 0;background:#fff;border:1px solid #b4c8bc;border-radius:10px;overflow:hidden}
#kisopass-events-prototype .ep-shop-section h4{font-size:1.375rem;line-height:1.5;margin:0;padding:14px 16px 4px;background:#15595a;color:#fff;font-weight:700}
#kisopass-events-prototype .ep-shop-date{font-size:1rem;line-height:1.6;margin:0;padding:0 16px 14px;background:#15595a;color:#eef8ed;font-weight:500}
#kisopass-events-prototype .ep-shop-list{display:grid;gap:0}
#kisopass-events-prototype .ep-shop-venue-heading{margin:0;padding:14px 16px;background:#e4eee7;color:#15595a;border-top:1px solid #c4d4ca;font-size:1rem;font-weight:700;line-height:1.5}
#kisopass-events-prototype .ep-shop-row{display:grid;grid-template-columns:minmax(0,1fr) auto 28px;align-items:center;gap:8px 12px;padding:12px 16px;width:100%;min-height:80px;border:0;border-bottom:1px solid #cbd8cd;border-radius:0;background:#fff;box-shadow:none;text-align:left;font:inherit;cursor:pointer}
#kisopass-events-prototype .ep-shop-row:hover{background:#eef7ef}
#kisopass-events-prototype .ep-shop-row:focus-visible{outline:3px solid #bf8800;outline-offset:-3px}
#kisopass-events-prototype .ep-shop-identity{min-width:0;display:grid;justify-items:start;gap:4px}
#kisopass-events-prototype .ep-shop-category{font-size:.9375rem;line-height:1.4;padding:2px 7px;background:#e5efe5;border-radius:4px;color:#15534b;font-weight:600}
#kisopass-events-prototype .ep-shop-name{font-size:1.125rem;line-height:1.5;font-weight:700}
#kisopass-events-prototype .ep-shop-hours{font-size:1rem;line-height:1.5;font-weight:500;font-variant-numeric:tabular-nums;max-width:10em}
#kisopass-events-prototype .ep-shop-status{display:block;font-size:.9375rem;line-height:1.5;margin-top:6px;color:#08737a}
#kisopass-events-prototype .ep-shop-arrow{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:50%;background:#f2d179;font-size:1.5rem;line-height:1;color:#164f4b;font-weight:700}
#kisopass-events-prototype .ep-shop-note{font-size:.9375rem;line-height:1.7;margin:0;padding:14px 16px;background:#edf3e9;color:var(--ep-muted)}
#kisopass-events-prototype .ep-shop-more{display:block;width:100%;margin:0;min-height:48px;padding:12px 16px;background:#fff;border:0;border-top:1px solid #cbd8cd;color:#15595a;text-align:right;font:inherit;font-size:1rem;font-weight:600}
#kisopass-events-prototype .ep-participant-section{border-color:#cba47a;scroll-margin-top:76px}
#kisopass-events-prototype .ep-participant-section h4,#kisopass-events-prototype .ep-participant-section .ep-shop-date{background:#864427;color:#fff}
#kisopass-events-prototype .ep-participant-section h4{display:flex;align-items:center;justify-content:space-between;gap:8px}
#kisopass-events-prototype .ep-participant-count{flex:none;white-space:nowrap;font-size:1rem;padding:2px 6px;border:1px solid #e4c4a2;border-radius:4px}
#kisopass-events-prototype .ep-participant-event-time{display:inline-block;white-space:nowrap;margin-left:6px}
#kisopass-events-prototype .ep-participant-section .ep-shop-category{background:#f7e5cc;color:#783d21}
#kisopass-events-prototype .ep-participant-row{background:#fffdf8;border-bottom-color:#e4d5be}
#kisopass-events-prototype .ep-participant-row:hover{background:#fff3df}
#kisopass-events-prototype .ep-participant-facts{display:grid;gap:6px;max-width:17em}
#kisopass-events-prototype .ep-participant-alias,#kisopass-events-prototype .ep-participant-note,#kisopass-events-prototype .ep-participant-holiday{font-size:.9375rem;line-height:1.6;color:#5e584b}
#kisopass-events-prototype .ep-participant-section .ep-shop-note{background:#f7eddd;color:#59452e}
#kisopass-events-prototype .ep-participant-how{padding:12px 16px;border-bottom:1px solid #e4d5be;font-size:1rem;line-height:1.7;background:#fff7e9}
#kisopass-events-prototype .ep-participant-how summary{font-weight:600;cursor:pointer}
#kisopass-events-prototype .ep-participant-how p{margin:12px 0 0;font-size:1rem;line-height:1.7}
#kisopass-events-prototype .ep-information{margin-top:36px}
#kisopass-events-prototype .ep-information-actions{display:flex;flex-wrap:wrap;gap:16px}
#kisopass-events-prototype .ep-information-actions a{display:flex;align-items:center;justify-content:center;gap:10px;flex:1 1 210px;min-height:48px;padding:12px 16px;border:1px solid #a5c8c5;border-radius:9px;background:#ffffffa6;color:#145b63;font-size:1rem;font-weight:600;text-decoration:none;line-height:1.6}
#kisopass-events-prototype .ep-contact,#kisopass-events-prototype .ep-event-note{font-size:1rem;line-height:1.8;margin:22px 0 0;white-space:pre-line}
#kisopass-events-prototype .ep-contact:empty{display:none}
#kisopass-events-prototype .ep-source-details{margin-top:24px;font-size:1rem}
#kisopass-events-prototype .ep-source-details summary{font-size:.9375rem;line-height:1.6;color:var(--ep-muted);font-weight:500;padding:12px 0}
#kisopass-events-prototype .ep-detail .ep-notice{background:#eef6f0;font-size:1rem;line-height:1.8;padding:16px;margin:16px 0}
#kisopass-events-prototype .ep-detail .ep-sources{font-size:1rem;line-height:1.9}
#kisopass-events-prototype .ep-detail .ep-sources small,#kisopass-events-prototype .ep-detail .ep-copy-hint{font-size:.9375rem;line-height:1.7}
#kisopass-events-prototype .ep-detail .ep-share-footer{margin-top:24px;padding-top:24px;border-top:1px solid var(--ep-line)}
#kisopass-events-prototype .ep-detail .ep-share-label{font-size:.9375rem;margin:0 0 14px}
#kisopass-events-prototype .ep-detail .ep-share-actions{gap:14px}
#kisopass-events-prototype .ep-detail .ep-share-actions a,#kisopass-events-prototype .ep-detail .ep-share-actions button{flex:1 1 150px;min-height:48px;padding:10px 14px;font-size:1rem;border-color:#a5c8c5;background:#ffffffa6}
#kisopass-events-prototype .ep-bottom-back{display:flex;align-items:center;justify-content:center;width:100%;margin:28px 0 0;padding:16px;min-height:52px;background:transparent;border:0;border-top:1px solid var(--ep-line);color:#08737a;font:inherit;font-size:1rem}
#kisopass-events-prototype .ep-bottom-back.ep-normal-back{border:0;border-radius:8px;background:#2e6f9b;color:#fff;text-decoration:none;font-weight:700}
#kisopass-events-prototype .ep-detail .ep-registration{padding:20px;margin:0 0 24px;font-size:1rem;line-height:1.8}
#kisopass-events-prototype .ep-detail .ep-registration-deadline{font-size:1.125rem}
#kisopass-events-prototype .ep-detail .ep-parking{margin:32px 0}
#kisopass-events-prototype .ep-detail .ep-parking h4{font-size:1.25rem}
#kisopass-events-prototype .ep-detail .ep-parking-notice,#kisopass-events-prototype .ep-detail .ep-parking li p,#kisopass-events-prototype .ep-detail .ep-parking li strong{font-size:1rem;line-height:1.8}
#kisopass-events-prototype .ep-detail .ep-parking li{padding:20px 0}
#kisopass-events-prototype .ep-detail .ep-parking-source{font-size:.9375rem}
@media(max-width:480px){#kisopass-events-prototype .ep-shop-row{grid-template-columns:minmax(0,1fr) 28px;gap:7px 12px}#kisopass-events-prototype .ep-shop-hours{grid-column:1;grid-row:2;max-width:none}#kisopass-events-prototype .ep-shop-arrow{grid-column:2;grid-row:1/3}}
@media(max-width:360px){#kisopass-events-prototype .ep-detail-active .ep-main{padding-right:16px;padding-left:16px}#kisopass-events-prototype .ep-venue-block{padding:20px 16px}}
