.mye-events{--mye-cols-desktop:3;--mye-cols-tablet:2;--mye-cols-mobile:1;--mye-card-gap:22px;--mye-poster-height:310px;--mye-object-fit:contain;--mye-ink:#192a42;--mye-muted:#607188;--mye-accent:#153e79;color:var(--mye-ink);width:100%}
.mye-events *{box-sizing:border-box}
.mye-events .mye-group+.mye-group{margin-top:42px}
.mye-events .mye-group-title{font-size:clamp(22px,2.2vw,30px);font-weight:750;line-height:1.25;color:var(--mye-ink);margin:0 0 22px;padding:0}
.mye-events .mye-layout.mye-uniform{display:grid;grid-template-columns:repeat(var(--mye-cols-desktop),minmax(0,1fr));gap:var(--mye-card-gap);align-items:stretch}
/* Fallback: chronological CSS Grid rows when JavaScript is unavailable. */
.mye-events .mye-layout.mye-masonry{display:grid;grid-template-columns:repeat(var(--mye-cols-desktop),minmax(0,1fr));gap:var(--mye-card-gap);align-items:start;grid-auto-flow:row}
/* Masonry: each item spans only the rows needed by its actual height.
   Auto-placement remains sparse, preserving chronological DOM order. */
.mye-events .mye-layout.mye-masonry.mye-masonry-ready{grid-auto-rows:6px;row-gap:0;column-gap:var(--mye-card-gap);grid-auto-flow:row;align-items:start}
.mye-events .mye-layout.mye-masonry.mye-masonry-ready>.mye-card{margin-bottom:var(--mye-card-gap);align-self:start}
.mye-events .mye-card{position:relative;display:flex;flex-direction:column;min-width:0;overflow:hidden;border:1px solid #e7ebf0;border-radius:12px;background:#fff;box-shadow:0 5px 22px rgba(25,42,66,.055);transition:box-shadow .2s ease,transform .2s ease}
.mye-events .mye-card:hover{box-shadow:0 12px 32px rgba(25,42,66,.12);transform:translateY(-2px)}
.mye-events .mye-masonry .mye-card{display:flex;width:100%;align-self:start;margin:0}
.mye-events .mye-poster{position:relative;min-width:0;width:100%;overflow:hidden;background:#f4f6f9}
.mye-events .mye-poster-action,.mye-events .mye-poster-static{display:block;width:100%;height:100%;line-height:0}
.mye-events .mye-poster-action{cursor:zoom-in}
.mye-events .mye-poster-action[href*="/"],.mye-events .mye-poster-action[data-mye-lightbox]{text-decoration:none}
.mye-events .mye-poster-image{display:block;width:100%;height:auto;max-width:100%;border:0;border-radius:0;object-fit:contain;transition:transform .25s ease}
.mye-events .mye-card:hover .mye-poster-image{transform:scale(1.016)}
.mye-events .mye-uniform .mye-poster{height:var(--mye-poster-height)}
.mye-events .mye-uniform .mye-poster-image{height:100%;object-fit:var(--mye-object-fit)}
.mye-events .mye-masonry .mye-poster-image{height:auto;object-fit:contain}
.mye-events .mye-uniform .mye-card-body{min-height:185px}
.mye-events .mye-uniform .mye-card-title{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.mye-events .mye-uniform .mye-card-excerpt{display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.mye-events .mye-no-poster{height:100%;min-height:170px;display:flex;flex-direction:column;gap:8px;align-items:center;justify-content:center;padding:30px 18px;color:#8793a3;font-size:14px;text-align:center}
.mye-events .mye-no-poster-icon{font-size:48px;line-height:1}
.mye-events .mye-status{position:absolute;top:12px;left:12px;max-width:calc(100% - 24px);z-index:1;border-radius:999px;padding:6px 11px;font-size:11px;line-height:1.2;font-weight:700;letter-spacing:.03em;text-transform:uppercase;background:#e5f5f0;color:#167057;box-shadow:0 1px 6px rgba(0,0,0,.08)}
.mye-events .mye-status-past{background:#f0f1f4;color:#536174}
.mye-events .mye-status-ongoing{background:#fff1d6;color:#82500b}
.mye-events .mye-card-body{display:flex;flex-direction:column;flex:1;padding:19px 19px 20px;min-height:0}
.mye-events .mye-card-meta{display:flex;flex-direction:column;align-items:flex-start;gap:6px;color:var(--mye-muted);font-size:12px;line-height:1.5;margin:0 0 12px}
.mye-events .mye-card-meta span{overflow-wrap:anywhere}
.mye-events .mye-card-title{font-size:18px;line-height:1.4;font-weight:700;margin:0 0 14px;overflow-wrap:anywhere}
.mye-events .mye-card-title a{color:var(--mye-ink);text-decoration:none;transition:color .2s ease}
.mye-events .mye-card-title a:hover{color:#255ba4}
.mye-events .mye-card-excerpt{font-size:14px;line-height:1.6;color:var(--mye-muted);margin:0 0 16px}
.mye-events .mye-card-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;align-self:flex-start;max-width:100%;margin-top:auto;padding:11px 16px;border-radius:7px;background:var(--mye-accent);font-size:13px;line-height:1.2;font-weight:700;color:#fff;text-decoration:none;transition:opacity .2s ease,transform .2s ease}
.mye-events .mye-card-button:hover,.mye-events .mye-card-button:focus{color:#fff;text-decoration:none;opacity:.9;transform:translateY(-1px)}
.mye-events .mye-empty{display:flex;align-items:center;flex-direction:column;text-align:center;justify-content:center;padding:55px 24px;border-radius:14px;border:1px solid #e5eaf0;background:#f8fafc}
.mye-events .mye-empty-icon{font-size:50px;line-height:1;color:#8a99ae;margin-bottom:12px}
.mye-events .mye-empty h3{color:var(--mye-ink);font-size:23px;line-height:1.3;font-weight:700;margin:0 0 12px}
.mye-events .mye-empty p{color:var(--mye-muted);font-size:15px;line-height:1.6;max-width:480px;margin:0}
.mye-lightbox{position:fixed;inset:0;max-width:min(1050px,94vw);max-height:94vh;width:max-content;height:max-content;min-width:min(400px,94vw);margin:auto;padding:38px 18px 14px;border:0;border-radius:12px;background:#fff;color:#1d2939;box-shadow:0 20px 80px rgba(0,0,0,.25);overflow:auto;text-align:center}
.mye-lightbox::backdrop{background:rgba(4,12,25,.85);backdrop-filter:blur(4px)}
.mye-lightbox:not([open]){display:none}
.mye-lightbox .mye-lightbox-image{display:block;margin:0 auto;width:auto;max-width:100%;max-height:78vh;height:auto;object-fit:contain}
.mye-lightbox .mye-lightbox-caption{margin:12px auto 0;font-size:14px;line-height:1.4;color:#364152}
.mye-lightbox .mye-lightbox-close{position:absolute;top:5px;right:9px;width:32px;height:32px;padding:0;border:0;background:none;color:#233247;font-size:30px;line-height:32px;cursor:pointer}
@media(max-width:1024px){.mye-events .mye-layout.mye-uniform{grid-template-columns:repeat(var(--mye-cols-tablet),minmax(0,1fr))}.mye-events .mye-layout.mye-masonry{grid-template-columns:repeat(var(--mye-cols-tablet),minmax(0,1fr))}}
@media(max-width:767px){.mye-events .mye-layout.mye-uniform{grid-template-columns:repeat(var(--mye-cols-mobile),minmax(0,1fr))}.mye-events .mye-layout.mye-masonry{grid-template-columns:repeat(var(--mye-cols-mobile),minmax(0,1fr))}.mye-events .mye-group+.mye-group{margin-top:32px}.mye-events .mye-card-body{padding:16px}.mye-events .mye-card-title{font-size:17px}.mye-events .mye-group-title{margin-bottom:16px}.mye-events .mye-uniform .mye-poster{height:min(var(--mye-poster-height),70vw)}}
@media(prefers-reduced-motion:reduce){.mye-events .mye-card,.mye-events .mye-poster-image,.mye-events .mye-card-button{transition:none}.mye-events .mye-card:hover,.mye-events .mye-card:hover .mye-poster-image{transform:none}}
