/* Alive · card form (mock) + 3-D Secure stand-in. Inherits the page's dark tokens. */
.mockpay { display: flex; flex-direction: column; gap: .6rem; padding: .9rem; border-radius: 14px; border: 1px dashed rgba(244, 205, 130, .45); background: rgba(255, 255, 255, .03); }
.mp-tag { align-self: flex-start; font-size: .68rem; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: #2a0f18; background: #f4cd82; padding: .2rem .55rem; border-radius: 999px; }
.mp-row { display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: .5rem; }
.mp-f { display: flex; flex-direction: column; gap: .25rem; min-width: 0; }
.mp-f span { font-size: .7rem; letter-spacing: .1em; text-transform: uppercase; opacity: .6; font-weight: 700; }
.mp-f input { width: 100%; min-height: 3rem; padding: .7rem .85rem; border-radius: 12px; border: 1px solid rgba(255, 232, 214, .18); background: rgba(255, 238, 226, .08); color: inherit; font: inherit; font-size: 1.05rem; font-variant-numeric: tabular-nums; }
.mp-f input:focus { outline: none; border-color: #f4cd82; }
.mp-hint { font-size: .72rem; opacity: .55; }
.mockpay.compact .mp-f input { min-height: 2.4rem; padding: .45rem .65rem; font-size: .92rem; }
.mp-3ds { position: fixed; inset: 0; z-index: 200; display: grid; place-items: center; background: rgba(0, 0, 0, .6); padding: 1rem; }
.mp-3ds-card { max-width: 340px; background: #fff; color: #1b1b1f; border-radius: 16px; padding: 1.3rem; display: flex; flex-direction: column; gap: .6rem; font-family: system-ui, sans-serif; }
.mp-3ds-card p { font-size: .9rem; color: #555; }
.mp-3ds-row { display: flex; gap: .5rem; } .mp-3ds-row button { flex: 1; padding: .7rem; border-radius: 10px; border: 1px solid #ccc; background: #f4f4f6; font-weight: 700; cursor: pointer; }
.mp-3ds-row button[data-a=ok] { background: #1b1b1f; color: #fff; border-color: #1b1b1f; }
