/* Scoped to the existing reservation checkout; inherit its Rubik typography. */
.meiso-formulas-v1 { color: #12383a; font: inherit; max-width: 600px; margin: 16px auto; padding: 0 12px; }
.meiso-formulas-v1 *, .meiso-formulas-v1 *::before, .meiso-formulas-v1 *::after { box-sizing: border-box; }
.meiso-formulas-v1 h3 { font: inherit; font-size: 1.25rem; font-weight: 500; margin: 0 0 14px; }
.meiso-formulas-v1 fieldset { padding: 0; margin: 0; border: 0; min-width: 0; }
.meiso-formulas-v1 legend { font-weight: 500; font-size: 14px; padding: 0; margin-bottom: 7px; }
.meiso-formulas-v1 .mf-choice { display: flex; align-items: flex-start; gap: 11px; padding: 13px; margin: 9px 0 0; border: 1px solid #cde3e3; border-radius: 8px; cursor: pointer; }
.meiso-formulas-v1 .mf-choice:has(input:checked) { background: #e4f8f7; border-color: #23b1b1; }
.meiso-formulas-v1 input[type=radio] { accent-color: #168585; margin: 4px 0 0; flex: 0 0 auto; }
.meiso-formulas-v1 .mf-copy { min-width: 0; flex: 1; }
.meiso-formulas-v1 .mf-title { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 6px 12px; font-size: 15px; font-weight: 500; }
.meiso-formulas-v1 .mf-title strong { font-weight: 500; white-space: nowrap; }
.meiso-formulas-v1 .mf-detail, .meiso-formulas-v1 .mf-meta { display: block; line-height: 1.45; margin-top: 5px; font-size: 13px; }
.meiso-formulas-v1 .mf-meta { font-size: 12px; color: #456164; }
.meiso-formulas-v1 .mf-summary { display: flex; justify-content: space-between; flex-wrap: wrap; align-items: baseline; gap: 12px; border-top: 1px solid #cde3e3; padding-top: 13px; margin: 14px 0 0; font-size: 14px; }
.meiso-formulas-v1 .mf-summary strong { max-width: 100%; font-size: 20px; font-weight: 500; white-space: normal; overflow-wrap: break-word; }
.meiso-formulas-v1 .mf-terms, .meiso-formulas-v1 .mf-status, .meiso-formulas-v1 .mf-promo-note, .meiso-formulas-v1 .mf-slot-caution { font-size: 13px; line-height: 1.5; margin: 8px 0; }
.meiso-formulas-v1 .mf-status:empty { display: none; }
.meiso-formulas-v1 .mf-change-slot, .meiso-formulas-v1 .mf-reload-unit, .meiso-formulas-v1 .mf-refresh { color: #155e65; background: transparent; border: 0; padding: 8px 0; font: inherit; font-size: 14px; text-decoration: underline; cursor: pointer; }
.meiso-formulas-v1 :focus-visible { outline: 3px solid #155e65; outline-offset: 3px; }
.meiso-formulas-v1 [hidden] { display: none !important; }

.meiso-formulas-v1 .mf-refresh { min-height:44px; }
.meiso-formulas-v1 .mf-refresh:disabled { opacity:.55; cursor:wait; }

/* Keep the final amount announcement available when fully covered formulas are hidden. */
#form_checkout .mf-announcement { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); clip-path: inset(50%); white-space: nowrap; border: 0; }

/* The versioned formula stylesheet also covers a cached native theme stylesheet. */
#form_checkout #promo-code-response { color: #155e65; }

#form_checkout .meiso-service-summary-allocation:not([hidden]) { display: block; margin-top: 4px; }
