.mms-market{max-width:1100px;margin:1.5rem auto;color:#193047}
.mms-events{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}
.mms-events article,.mms-booking,.mms-waitlist,.mms-requirements{border:1px solid #d7e2ea;border-radius:14px;padding:18px;background:#fff}
.mms-button{display:inline-block;border:0;border-radius:8px;background:#1766a6;color:#fff;padding:10px 14px;font-weight:700;text-decoration:none;cursor:pointer}
.mms-button:hover{background:#10517f;color:#fff}
.mms-release{border:1px solid #8aa2b4;border-radius:8px;background:#fff;color:#193047;padding:10px 14px;cursor:pointer}
.mms-button:focus-visible,.mms-stall:focus-visible{outline:3px solid #0b507d;outline-offset:3px}
.mms-key{display:flex;gap:12px;flex-wrap:wrap}
.mms-key span{padding:5px 9px;border-radius:999px;font-size:.85em}
.mms-key .available{background:#dff5e8}.mms-key .held{background:#fff1c5}.mms-key .booked{background:#f5dce0}
.mms-layout{position:relative;min-height:420px;border:1px solid #cad7e2;border-radius:16px;background:#f5f8fa center/cover no-repeat;overflow:auto;padding:12px;display:flex;align-content:flex-start;flex-wrap:wrap;gap:10px}
.mms-layout.mapped{display:block;overflow:hidden;padding:0;aspect-ratio:11/5;min-height:360px}
.mms-stall{position:relative;display:flex;min-width:92px;min-height:65px;flex-direction:column;justify-content:center;border:2px solid #18794e;border-radius:9px;background:#e6f6ed;color:#104331;cursor:pointer}
.mms-layout.mapped .mms-stall{position:absolute;min-width:0;min-height:0;box-sizing:border-box;z-index:1}
.mms-stall small{font-size:.74em}
.mms-stall.held{border-color:#a46b00;background:#fff3ce;color:#704800}
.mms-stall.booked,.mms-stall.unavailable{border-color:#a34451;background:#f8e4e7;color:#742634;cursor:not-allowed}
.mms-stall.selected{outline:4px solid #1766a6;z-index:2}
.mms-booking{margin-top:18px;max-width:620px}
.mms-booking label,.mms-waitlist label{display:block;font-weight:600;margin:10px 0}
.mms-booking input,.mms-booking textarea,.mms-waitlist input{display:block;box-sizing:border-box;width:100%;margin-top:4px;padding:9px;border:1px solid #aebfcd;border-radius:7px;font:inherit}
.mms-terms{font-weight:400!important}.mms-terms input{display:inline!important;width:auto!important}
.mms-notice{white-space:pre-line;margin:12px 0;padding:0;font-weight:650}
.mms-help{color:#52697b}
@media(max-width:640px){.mms-layout{min-height:300px}.mms-layout.mapped{min-height:280px}.mms-stall{min-width:75px;min-height:55px}.mms-layout.mapped .mms-stall{font-size:.7em}}
