.mim-wrap{--mim-pink:#D91C5C;--mim-ink:#0D0D10;font-family:inherit;max-width:1080px;margin:0 auto}
.mim-form{background:#fff;border:1px solid #eee;border-radius:16px;padding:28px;box-shadow:0 10px 40px rgba(0,0,0,.06)}
.mim-title{margin:0 0 4px;font-size:26px;font-weight:800;color:var(--mim-ink)}
.mim-sub{margin:0 0 20px;color:#666;font-size:14px}
.mim-label{display:block;font-weight:700;color:var(--mim-ink);margin:18px 0 8px;font-size:14px}
.mim-input{width:100%;padding:12px 14px;border:1px solid #ddd;border-radius:10px;font-size:16px;font-family:inherit}
.mim-input:focus{outline:none;border-color:var(--mim-pink)}
.mim-hint{color:#999;font-size:12px}
.mim-cats{display:flex;flex-wrap:wrap;gap:8px}
.mim-chip{display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid #ddd;border-radius:999px;cursor:pointer;font-size:14px;user-select:none}
.mim-chip:has(input:checked){border-color:var(--mim-pink);background:rgba(217,28,92,.06);color:var(--mim-pink);font-weight:600}
.mim-chip input{accent-color:var(--mim-pink)}
.mim-stepper{display:flex;align-items:center;gap:8px;max-width:220px}
.mim-step{width:44px;height:44px;border:1px solid #ddd;background:#fff;border-radius:10px;font-size:20px;cursor:pointer}
.mim-guests{text-align:center}
.mim-go{margin-top:22px;width:100%;padding:15px;background:var(--mim-pink);color:#fff;border:none;border-radius:999px;font-size:15px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;cursor:pointer}
.mim-go:disabled{opacity:.6;cursor:wait}
.mim-error{margin:12px 0 0;color:#c0392b;font-size:14px;font-weight:600}
.mim-results{margin-top:32px}
.mim-summary{font-size:15px;color:#444;margin-bottom:16px}
.mim-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.mim-card{border:1px solid #eee;border-radius:14px;padding:20px;display:flex;flex-direction:column;background:#fff}
.mim-card--rec{border-color:var(--mim-pink);box-shadow:0 0 0 2px rgba(217,28,92,.15)}
.mim-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:8px}
.mim-card-name{font-size:15px;font-weight:700;color:var(--mim-ink)}
.mim-card-total{font-size:24px;font-weight:800;color:var(--mim-ink);margin-top:2px}
.mim-card-sub{color:#888;font-size:12px;margin:4px 0 14px}
.mim-badge{font-size:11px;font-weight:700;padding:4px 9px;border-radius:999px;white-space:nowrap}
.mim-badge--in{background:#e8f7ee;color:#1a9d51}
.mim-badge--over{background:#fdecec;color:#c0392b}
.mim-badge--rec{background:#fff4e5;color:#c77700}
.mim-rows{display:flex;flex-direction:column;gap:10px;flex:1;margin-bottom:16px}
.mim-row{display:flex;align-items:center;gap:10px;font-size:13px}
.mim-row img{width:36px;height:36px;object-fit:cover;border-radius:6px;background:#f4f4f4;flex-shrink:0}
.mim-name{flex:1;color:#333;line-height:1.3}
.mim-price{font-weight:700;color:var(--mim-ink);white-space:nowrap}
.mim-add{padding:12px;background:var(--mim-ink);color:#fff;border:none;border-radius:999px;font-weight:700;font-size:13px;cursor:pointer}
.mim-add:disabled{opacity:.6;cursor:wait}
@media(max-width:820px){.mim-cards{grid-template-columns:1fr}}

/* --- Floating launcher (bottom-LEFT; WhatsApp owns bottom-right) --- */
.mim-fab{position:fixed;left:18px;bottom:18px;z-index:99990;display:inline-flex;align-items:center;gap:9px;padding:11px 16px 11px 13px;background:#D91C5C;color:#fff;border:none;border-radius:999px;box-shadow:0 8px 24px rgba(217,28,92,.42);cursor:pointer;font-family:inherit;font-weight:700;font-size:13.5px;letter-spacing:.01em}
.mim-fab:hover{background:#c2154f}
.mim-fab svg{width:20px;height:20px;flex-shrink:0}
.mim-fab-txt{white-space:nowrap}
.mim-fab-badge{background:#ffd24d;color:#0D0D10;font-size:9px;font-weight:800;letter-spacing:.08em;padding:2px 6px;border-radius:999px}
html.mim-lock{overflow:hidden}
@media(max-width:600px){
	.mim-fab{left:12px;bottom:12px;padding:10px 14px 10px 12px;font-size:12.5px}
	.mim-fab-txt{display:none}
	.mim-fab-badge{display:none}
	.mim-fab svg{width:22px;height:22px}
}

/* --- Modal --- */
.mim-modal{position:fixed;inset:0;z-index:100000;display:flex;align-items:flex-start;justify-content:center;padding:40px 16px;overflow:auto}
.mim-modal[hidden]{display:none}
.mim-modal-bg{position:fixed;inset:0;background:rgba(0,0,0,.62);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}
.mim-modal-panel{position:relative;z-index:1;width:100%;max-width:1120px;margin:auto}
.mim-close{position:absolute;top:12px;right:12px;z-index:3;width:38px;height:38px;border:none;border-radius:50%;background:#0D0D10;color:#fff;font-size:22px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}
.mim-close:hover{background:#333}
@media(max-width:600px){.mim-modal{padding:16px 8px}}

/* inline shortcode button */
.mim-inline-btn{display:inline-flex;align-items:center;padding:13px 22px;background:#D91C5C;color:#fff;border:none;border-radius:999px;font-family:inherit;font-weight:700;font-size:14px;letter-spacing:.03em;text-transform:uppercase;cursor:pointer}
.mim-inline-btn:hover{background:#c2154f}
