/*
 * BM.Market — checkout accept-terms checkboxes, disabled CTA, and the terms
 * modal. Loaded globally (mini-cart is in the header on every page). Plain CSS
 * on design tokens, so it survives the Tailwind purge.
 */

/* ---- Checkbox rows (cart page + mini-cart) ---- */
.bm-agree-list { display: flex; flex-direction: column; gap: 10px; margin: 4px 0 14px; }
.bm-agree-row { display: flex; align-items: flex-start; gap: 9px; font-size: 13.5px; line-height: 1.45; }
.bm-agree-cb {
    flex-shrink: 0;
    width: 18px;
    height: 18px;
    margin-top: 1px;
    accent-color: var(--color-primary, #0F2C52);
    cursor: pointer;
    border-radius: 4px;
}
.bm-agree-text { color: var(--color-fg-secondary, #6B7280); cursor: pointer; }
.bm-agree-text a { color: var(--color-link, #1d4ed8); text-decoration: underline; }
.bm-agree-text a:hover { color: var(--color-primary, #0F2C52); }
.bm-agree-help {
    flex-shrink: 0;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 1px solid var(--color-border, #d1d5db);
    background: #fff;
    color: var(--color-fg-secondary, #6B7280);
    font-size: 12px;
    font-weight: 700;
    line-height: 1;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    transition: border-color .15s, color .15s;
}
.bm-agree-help:hover { border-color: var(--color-primary, #0F2C52); color: var(--color-primary, #0F2C52); }

/* ---- Disabled CTA — same button, less bright ---- */
.bm-btn-cta.bm-btn-disabled,
.bm-btn-cta.bm-btn-disabled:hover {
    background: #FBE7A6;      /* pale yellow — clearly inactive vs #FFC107 */
    color: #9C8A56;
    cursor: not-allowed;
    box-shadow: none;
}

/* ---- Terms modal ---- */
.bm-agree-modal[x-cloak] { display: none !important; }
html.bm-agree-lock { overflow: hidden; }
.bm-agree-modal {
    position: fixed;
    inset: 0;
    z-index: 100000;              /* above the mini-cart drawer */
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 16px;
}
.bm-agree-modal-backdrop { position: absolute; inset: 0; background: rgba(15, 23, 42, .55); }
.bm-agree-modal-box {
    position: relative;
    display: flex;
    flex-direction: column;
    width: 100%;
    max-width: 640px;
    max-height: 88vh;
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 24px 60px -20px rgba(0, 0, 0, .35);
    overflow: hidden;
}
.bm-agree-modal-close {
    position: absolute;
    top: 8px;
    right: 12px;
    width: 34px;
    height: 34px;
    border: none;
    background: none;
    font-size: 26px;
    line-height: 1;
    color: var(--color-fg-secondary, #6B7280);
    cursor: pointer;
    z-index: 1;
}
.bm-agree-modal-close:hover { color: var(--color-primary, #0F2C52); }
.bm-agree-modal-content {
    overflow-y: auto;
    padding: 30px 26px 24px;
    font-size: 14px;
    line-height: 1.6;
    color: var(--color-fg, #111827);
}
.bm-agree-modal-content p { margin: 0 0 .85em; }
.bm-agree-modal-content p:last-child { margin-bottom: 0; }
.bm-agree-modal-content strong { font-weight: 700; }
