/* Scoped to plugin navigation; the host site's menu and typography remain independent. */
.mvk-account-links{display:flex;align-items:center;justify-content:flex-end;gap:.45rem;font-size:.85rem;line-height:1.5;white-space:nowrap;margin-left:auto}
.mvk-account-links a{text-decoration:none;color:inherit}
.mvk-account-links a:hover,.mvk-account-links a:focus-visible{text-decoration:underline}
.mvk-account-links span{opacity:.45}
.mvk-local-header{padding:1.1rem clamp(1rem,4vw,3rem);border-bottom:1px solid #e8e5e0}
.mvk-local-header>.wp-block-group{width:100%;max-width:1280px;margin-inline:auto}
.mvk-local-header .wp-block-site-title{font-size:clamp(1rem,2.5vw,1.25rem);margin:0}
.mvk-local-header .wp-block-shortcode{margin:0 0 0 auto}
.mvk-navigation-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;margin-bottom:2rem;padding-bottom:1rem;border-bottom:1px solid #e8e5e0}
.mvk-main-navigation{display:flex;align-items:center;flex-wrap:wrap;gap:.65rem 1.5rem;font-size:1rem}
.mvk-main-navigation a{color:inherit;text-decoration:none}
.mvk-main-navigation a:hover,.mvk-main-navigation a[aria-current="page"]{text-decoration:underline;text-underline-offset:.3em}
.mvk-local-footer,.mvk-legal-footer{padding:1.5rem clamp(1rem,4vw,3rem);margin-top:3rem;border-top:1px solid #e8e5e0}
.mvk-legal-links{display:flex;justify-content:center;flex-wrap:wrap;gap:.65rem 1.5rem;font-size:.85rem;line-height:1.6}
.mvk-legal-links a{color:inherit;text-decoration:none}
.mvk-legal-links a:hover,.mvk-legal-links a:focus-visible{text-decoration:underline}
@media(max-width:540px){.mvk-local-header>.wp-block-group{gap:.75rem}.mvk-account-links{font-size:.8rem}.mvk-navigation-bar{align-items:flex-start}.mvk-main-navigation{font-size:.9rem;gap:.5rem 1rem}}
.mvk-month-switch{display:grid;grid-template-columns:2.5rem 1fr 2.5rem;align-items:center;gap:1rem;margin:1.5rem 0}
.mvk-month-switch h2{margin:0;text-align:center;font-size:clamp(1.6rem,4vw,2.1rem)}
.mvk-month-arrow{display:grid;place-items:center;min-height:2.5rem;border:1px solid #dedbd5;border-radius:50%;text-decoration:none;color:inherit;line-height:1}
.mvk-month-arrow:hover{background:#f3f1ec}.mvk-month-today{text-align:center;font-size:.9rem}
.mvk-calendar-filters{margin:0 0 1.5rem;border:1px solid #e8e5e0;border-radius:.5rem;padding:.8rem 1rem}
.mvk-calendar-filters summary{cursor:pointer;font-size:.95rem}.mvk-calendar-filters form{margin-top:1rem}
.mvk-filter-help{font-size:.85rem;line-height:1.5;color:#555}.mvk-filter-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;font-size:.95rem}
.mvk-month-count{font-size:.9rem;color:#666}.mvk-month-empty{padding:1.4rem;background:#f7f6f2;border-radius:.5rem}
.mvk-month-empty p{margin:.3rem 0;font-size:1rem}.mvk-month-empty p+p{color:#666;font-size:.9rem}
.mvk-events{list-style:none;padding:0;margin:0}.mvk-event-row{display:grid;grid-template-columns:3.5rem 1fr;gap:1.2rem;padding:1.3rem 0;border-bottom:1px solid #e8e5e0}
.mvk-event-date{text-align:center;background:#f4f2ed;border-radius:.4rem;padding:.5rem .25rem;align-self:start}.mvk-event-date span{display:block;font-size:1.5rem;font-weight:600;line-height:1.2}.mvk-event-date small{display:block;font-size:.8rem}
.mvk-event-row h3{margin:0 0 .45rem;font-size:1.15rem}.mvk-event-row h3 a{color:inherit;text-decoration:none}.mvk-event-row h3 a:hover{text-decoration:underline}
.mvk-event-row .mvk-event-period,.mvk-event-row .mvk-event-location{font-size:.9rem;line-height:1.5;margin:.15rem 0}.mvk-event-location{color:#666}
.mvk-calendar-page main h1{font-size:clamp(1.25rem,4.2vw,3rem);overflow-wrap:normal}
.mvk-local-header .mvk-account-links{margin-left:auto;justify-content:flex-end}
.mvk-exhibitor-filter{margin:0 0 1.25rem;font-size:1rem}
.mvk-exhibitor-filter label{display:flex;gap:.6rem;align-items:center;cursor:pointer;line-height:1.5}
.mvk-exhibitor-filter input[type="checkbox"]{flex:none;width:1.1rem;height:1.1rem;accent-color:#473e35}
.mvk-exhibitor-filter noscript button{margin-top:.6rem}
.mvk-form-errors{padding:1rem 1.25rem;margin:0 0 1.5rem;border:2px solid #a12727;border-radius:4px;background:#fff4f1;color:#761b1b;font-size:1rem}
.mvk-form-errors p{margin:0 0 .5rem;font-weight:600}.mvk-form-errors ul{margin:.25rem 0;padding-left:1.25rem}
.mvk-form-errors a{color:#761b1b!important}.mvk-field-error{display:block;color:#a12727;font-size:.9rem;margin-top:.35rem}
.mvk-calendar-page main input[aria-invalid="true"]{border-color:#a12727!important}
.mvk-registration-confirmation{border:1px solid #929779;border-left:4px solid #737b55;border-radius:4px;background:#f4f4ec;padding:1.4rem;margin:1rem 0 2rem}
.mvk-registration-confirmation h2{margin:0 0 1rem}.mvk-registration-confirmation ol{padding-left:1.4rem}
.mvk-registration-confirmation li{margin:.5rem 0}.mvk-registration-confirmation p{font-size:1rem}
.mvk-my-events{margin-top:2.5rem}.mvk-own-event{padding:1.3rem 0;border-bottom:1px solid #dfd3c7}
.mvk-own-event h3{margin:.3rem 0}.mvk-own-event p{font-size:1rem;margin:.4rem 0}
.mvk-own-event form{margin-top:.8rem}

/* Optional fee variants remain readable on small screens. */
.mvk-fee-fields { margin: 1.5rem 0; padding: 1rem; border: 1px solid #8e6c4b; min-width: 0; }
.mvk-fee-row { display: flex; flex-wrap: wrap; gap: 1rem; }
.mvk-fee-row p { flex: 1 1 12rem; min-width: 0; }
.mvk-fee-row input, .mvk-fee-fields textarea { box-sizing: border-box; width: 100%; max-width: 100%; }
.mvk-fee-invalid { border: 2px solid #b42318; }
.mvk-fee-invalid input[aria-invalid="true"] { border: 2px solid #b42318; }
.mvk-private-fees { margin: 1.5rem 0; }
.mvk-private-fees dt { font-weight: 600; }
.mvk-private-fees dd { margin: 0 0 1rem; }
.mvk-own-event details { margin-top: 1rem; }

.mvk-support-link { display: inline-block; max-width: 100%; line-height: 1; }
.mvk-support-link img { display: block; width: 200px; max-width: 100%; height: auto; border: 0; }
.mvk-support-link:focus-visible { outline: 3px solid #473e35; outline-offset: 5px; }
.mvk-support-header-slot { display: block; max-width: min(200px, 60vw); line-height: 1; margin: 0; }
.mvk-support-header-fallback { margin: 1rem 0; }

/* Original logo file is preserved; this viewport hides its empty outer margins. */
.mvk-brand-logo-link { display: block; width: 112px; max-width: 100%; margin: auto; }
.mvk-brand-logo-crop { position: relative; display: block; width: 100%; aspect-ratio: 1; overflow: hidden; }
.mvk-brand-logo-crop img { position: absolute; width: 273.7931% !important; max-width: none !important; height: auto !important; left: -30%; top: -24.1379%; margin: 0; border: 0; }
.mvk-brand-logo-link:focus-visible { outline: 3px solid #473e35; outline-offset: 4px; }
.mvk-logo-header-row { display: grid !important; grid-template-columns: minmax(130px,200px) minmax(90px,1fr) minmax(0,auto) !important; align-items: center; gap: clamp(.5rem,2vw,2rem); min-height: 130px; }
.mvk-logo-header-row > * { min-width: 0; }
.mvk-logo-header-row .mvk-brand-logo-slot { justify-self: center; width: 112px; max-width: 100%; }
.mvk-logo-header-row [data-column="end"] .menu { flex-wrap: wrap; justify-content: flex-end; }
.mvk-logo-header-row .mvk-support-header-slot { max-width: 100%; }
.mvk-logo-header-fallback { display: flex; align-items: center; justify-content: space-between; gap: 1.5rem; padding: 1rem 0; }
@media(max-width:999px) {
 .mvk-logo-header-row { grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) !important; min-height: 106px; gap: .75rem; }
 .mvk-logo-header-row .mvk-brand-logo-slot { width: 90px; }
 .mvk-logo-header-row [data-column="end"] { justify-self: end; }
 .mvk-logo-header-row .mvk-support-link img { width: 150px; }
}

/* Compact, uncropped detail images; original files open separately. */
.mvk-event-gallery { display: flex; flex-wrap: wrap; align-items: flex-start; justify-content: flex-start; gap: 1.25rem; width: 100%; max-width: 800px; margin: 1.5rem auto; }
.mvk-event-gallery .mvk-event-flyer { flex: 0 1 240px; width: 240px; max-width: 100%; margin: 0; }
.mvk-event-gallery .mvk-event-flyer a { display: flex; align-items: center; justify-content: center; min-height: 100px; border: 1px solid #e8e5e0; padding: .5rem; border-radius: .4rem; }
.mvk-event-gallery .mvk-event-flyer img { max-height: 260px !important; max-width: 100% !important; width: auto !important; height: auto !important; object-fit: contain !important; }
.mvk-event-gallery figcaption { font-size: .8rem; line-height: 1.4; text-align: center; margin-top: .5rem; }
@media(max-width:540px) { .mvk-event-gallery { justify-content: center; gap: 1rem; } .mvk-event-gallery .mvk-event-flyer { flex-basis: 220px; width: 220px; } }

/* Small main-flyer previews in the calendar, without cropping the original. */
.mvk-event-row.mvk-event-row-has-flyer { grid-template-columns: 80px 3.5rem minmax(0,1fr); align-items: start; }
.mvk-calendar-flyer { display: flex; align-items: center; justify-content: center; width: 80px; min-height: 60px; border: 1px solid #e8e5e0; border-radius: .3rem; overflow: hidden; }
.mvk-calendar-flyer img { display: block; width: auto; max-width: 80px; height: auto; max-height: 110px; object-fit: contain; }
.mvk-calendar-flyer:focus-visible { outline: 3px solid #473e35; outline-offset: 3px; }
@media(max-width:540px) {
 .mvk-event-row.mvk-event-row-has-flyer { grid-template-columns: 56px 2.6rem minmax(0,1fr); gap: .7rem; }
 .mvk-calendar-flyer { width: 56px; min-height: 42px; }
 .mvk-calendar-flyer img { max-width: 56px; max-height: 80px; }
}
