:root{color-scheme:light}
.mahso-standalone{margin:0;background:#f5f7fb}
.mahso-standalone *,.mahso-root *{box-sizing:border-box}
.mahso-viewport{min-height:100vh}
.mahso-root{--accent:#345cf6;--ink:#182640;--muted:#7c899d;--line:#e7ecf4;min-height:100vh;background:radial-gradient(ellipse 70% 40% at 90% 0%,color-mix(in srgb,var(--accent) 7%,white) 0%,transparent 100%),#f5f7fb;color:var(--ink);font-family:var(--mahso-font,system-ui,-apple-system,"Segoe UI",Tahoma,Arial,sans-serif);font-size:14px;line-height:1.6;padding:14px 14px 18px;-webkit-font-smoothing:antialiased}
.mahso-root button,.mahso-root input,.mahso-root select{font-family:inherit}
.mahso-root button{cursor:pointer}
.mahso-shell{width:100%;max-width:500px;margin:0 auto}
.mahso-brand{display:none}
.mahso-brand-image{width:44px;height:44px;display:grid;place-items:center;border:1px solid #e6eaf2;border-radius:14px;background:#fff;box-shadow:0 6px 16px #1b356a0a;overflow:hidden;flex:none;padding:5px}
.mahso-brand-image img{width:100%;height:100%;object-fit:contain;display:block}
.mahso-brand-text{display:flex;flex-direction:column;gap:0;line-height:1.5}
.mahso-brand-caption{font-size:10px;color:#8994a9;font-weight:500}
.mahso-brand-text strong{font-size:14px;color:#273753;font-weight:750}
.mahso-card{background:#fff;border:1px solid #e8edf4;border-radius:24px;padding:22px 22px 18px;box-shadow:0 16px 44px #1c33520c,0 2px 9px #2b426107}
.mahso-eyebrow{display:inline-flex;align-items:center;gap:6px;border:1px solid #e8eef7;background:#f7f9fc;border-radius:50px;color:#6f7d93;padding:4px 10px;font-size:10px;font-weight:700;margin:0 0 8px}
.mahso-eyebrow-mark{width:7px;height:7px;border-radius:50%;background:#24af86}
.mahso-card h1{font-size:18px;line-height:1.45;letter-spacing:-.2px;margin:0;font-weight:850;text-align:right;color:#15223b}
.mahso-card .mahso-sub{margin:4px 0 0;text-align:right;font-size:12px;line-height:1.7;color:#7d8ba0}
.mahso-form-block{margin:0 0 14px}
.mahso-label-line{display:flex;justify-content:space-between;align-items:center;gap:10px;margin:0 0 6px}
.mahso-label{font-size:13px;font-weight:750;color:#31415c;display:block}
.mahso-optional{font-size:11px;font-weight:500;color:#95a1b1}
.mahso-amount{min-height:56px;border:1.5px solid #dfe6f0;border-radius:14px;display:flex;align-items:center;gap:10px;padding:6px 12px;transition:border-color .2s,box-shadow .2s;background:#fff}
.mahso-amount:focus-within{border-color:var(--accent);box-shadow:0 0 0 4px color-mix(in srgb,var(--accent) 11%,transparent)}
.mahso-amount input{min-width:0;flex:1;width:100%;padding:0!important;margin:0!important;font-size:20px!important;line-height:1.3!important;font-weight:780!important;direction:ltr;text-align:right;letter-spacing:-.2px;color:#1b2b48!important;background:transparent!important;border:0!important;box-shadow:none!important;outline:0!important;border-radius:0!important}
.mahso-amount input::placeholder{color:#b2bbca;opacity:1}
.mahso-amount-unit{font-size:13px;font-weight:650;white-space:nowrap;color:#77859c;background:#f3f6fa;border-radius:8px;padding:6px 10px}
.mahso-help{font-size:11px;color:#9aa5b5;margin:5px 2px 0}
.mahso-error{font-size:12px;color:#c13939;margin:7px 2px 0}
.mahso-quick-amounts{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}
.mahso-chip{font-size:12px;font-weight:700;border:1px solid #e3eaf4;background:#f8fafd;color:#697a95;border-radius:10px;padding:8px 12px;transition:.18s}
.mahso-chip:hover,.mahso-chip.is-active{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 8%,white);color:var(--accent)}
.mahso-input{display:block;width:100%!important;max-width:100%!important;min-height:50px!important;padding:11px 14px!important;background:#fff!important;border:1px solid #e0e6f0!important;border-radius:12px!important;color:#283753!important;box-shadow:none!important;outline:none!important;font-size:13px!important;transition:.2s}
.mahso-input::placeholder{color:#a7b2c2;opacity:1}
.mahso-input:focus{border-color:var(--accent)!important;box-shadow:0 0 0 3px color-mix(in srgb,var(--accent) 10%,transparent)!important}
.mahso-input[dir="ltr"]{text-align:right}
.mahso-gateway-fieldset{margin:10px 0 0;padding:0;border:0;min-width:0}
.mahso-gateway-fieldset legend{float:none;margin:0 0 10px;padding:0}
.mahso-gateway-options{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
.mahso-gateway-option{display:flex;gap:7px;align-items:center;min-width:0;min-height:54px;padding:8px 10px;background:#fff;border:1.5px solid #e6ebf2;border-radius:13px;position:relative;cursor:pointer;transition:.18s}
.mahso-gateway-option:has(input:checked){border-color:var(--accent);background:color-mix(in srgb,var(--accent) 5%,white)}
.mahso-gateway-option:focus-within{outline:3px solid color-mix(in srgb,var(--accent) 18%,transparent)}
.mahso-gateway-option input{position:absolute;opacity:0;width:1px;height:1px;pointer-events:none}
.mahso-gateway-icon{width:31px;height:31px;flex:none;display:grid;place-items:center;border-radius:9px;background:#f0f3f9;color:#435776;font-size:12px;font-weight:800}
.mahso-gateway-name{font-size:12px;font-weight:700;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.mahso-gateway-radio{border:1.5px solid #bfcbdb;width:15px;height:15px;border-radius:50%;flex:none;margin-right:auto}
.mahso-gateway-option:has(input:checked) .mahso-gateway-radio{border:5px solid var(--accent)}
.mahso-single-gateway{margin:16px 0 0;border:1px solid #e7ecf3;border-radius:11px;padding:10px 14px;display:flex;justify-content:space-between;align-items:center;color:#8692a6;font-size:12px}
.mahso-single-gateway strong{color:#324561}
.mahso-btn{width:100%;display:flex;align-items:center;justify-content:center;gap:11px;min-height:50px;margin:14px 0 0;padding:11px 16px;text-align:center;border:0;border-radius:13px;background:var(--accent);color:#fff!important;text-decoration:none!important;font-size:15px;font-weight:800;box-shadow:0 8px 20px color-mix(in srgb,var(--accent) 18%,transparent);transition:transform .18s,filter .18s,box-shadow .18s}
.mahso-btn:hover{filter:brightness(.94);transform:translateY(-1px)}
.mahso-btn:focus-visible{outline:3px solid color-mix(in srgb,var(--accent) 30%,transparent);outline-offset:3px}
.mahso-btn:disabled{opacity:.7;cursor:wait}
.mahso-btn.alt{background:#ecf0f7;color:#334765!important;box-shadow:none}
.mahso-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:14px}
.mahso-head-copy{display:flex;flex-direction:column;align-items:flex-start;gap:0;min-width:0;flex:1}
.mahso-head-brand{width:68px;height:68px;display:grid;place-items:center;border:1px solid #e4e9f2;border-radius:18px;background:#fff;box-shadow:0 8px 18px #1b356a0b;overflow:hidden;flex:none;padding:8px}
.mahso-head-brand img{width:100%;height:100%;display:block;object-fit:contain}
.mahso-card.is-compact .mahso-form-block:last-of-type{margin-bottom:0}
.mahso-footer{display:flex;align-items:center;justify-content:center;gap:6px;color:#98a5b7;text-align:center;font-size:10.5px;margin:10px auto 0;line-height:1.8}
.mahso-footer svg{flex:none}
.mahso-honeypot{position:absolute!important;inset:auto!important;width:1px!important;height:1px!important;padding:0!important;margin:0!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;clip-path:inset(50%)!important;white-space:nowrap!important;border:0!important;pointer-events:none!important}
.mahso-warning,.mahso-notice{padding:15px;background:#fff7ee;color:#94541e;border:1px solid #f8e7cf;border-radius:12px;font-size:13px}
.mahso-status-card{text-align:center;margin-top:10vh}
.mahso-status-card h1{text-align:center;margin-top:8px}
.mahso-status-card .mahso-sub{text-align:center;margin:-4px 0 15px}
.mahso-status-symbol{margin:0 auto 17px;width:54px;height:54px;border-radius:17px;background:#fff0e8;color:#bb622a;display:grid;place-items:center;font-size:26px;font-weight:800}
.mahso-status-symbol.is-success{color:#18845e;background:#eafbf3}
.mahso-receipt{margin-top:20px;border-top:1px dashed #dfe5ee;border-bottom:1px dashed #dfe5ee}
.mahso-receipt>div{display:flex;justify-content:space-between;gap:14px;padding:11px 0;font-size:12px;border-bottom:1px solid #f0f2f7;text-align:right}
.mahso-receipt>div:last-child{border-bottom:0}
.mahso-receipt span{color:#7c8aa0}
.mahso-receipt b{font-weight:700;overflow-wrap:anywhere}
@media(max-width:570px){.mahso-root{padding:10px 10px 14px}.mahso-card{border-radius:18px;padding:18px 16px}.mahso-card h1{font-size:17px}.mahso-amount input{font-size:18px!important}.mahso-gateway-option{padding:8px;gap:6px}.mahso-quick-amounts{gap:6px}}
@media(max-width:350px){.mahso-card{padding:16px 12px}.mahso-quick-amounts{gap:5px}.mahso-gateway-icon{width:27px;height:27px}.mahso-gateway-option{gap:5px;padding:7px}.mahso-gateway-name{font-size:11px}}
@media(max-width:290px){.mahso-gateway-options{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.mahso-root *{transition:none!important}}
@media print{.mahso-root{background:#fff!important}.mahso-card{box-shadow:none!important}}

/* 1.1.3: center the complete payment card within the actual viewport.
   The container uses border-box sizing, so 100dvh includes its padding.
   If optional fields require extra space on small screens, vertical scrolling
   remains available; horizontal overflow is never intentional. */
html{width:100%;max-width:100%;min-width:0;overflow-x:clip}
body.mahso-standalone{width:100%;max-width:100%;min-width:0;margin:0;padding:0;overflow-x:clip}
.mahso-viewport{width:100%;max-width:100%;min-width:0;min-height:100vh;min-height:100dvh;overflow-x:clip}
.mahso-root{box-sizing:border-box;display:flex;align-items:center;justify-content:center;width:100%;max-width:100%;min-width:0;min-height:100vh;min-height:100dvh;padding:14px 12px;overflow-x:clip}
.mahso-root>.mahso-shell{box-sizing:border-box;min-width:0;max-width:500px;width:100%;flex:0 1 500px;margin:auto}
.mahso-root .mahso-status-card{margin-top:0}
.mahso-root .mahso-gateway-icon--image{background:#fff;border:1px solid #e9edf5;overflow:hidden;padding:3px}
.mahso-root .mahso-gateway-icon--image img{display:block;width:100%;height:100%;object-fit:contain}
.mahso-root .mahso-single-gateway-brand{display:inline-flex;align-items:center;gap:8px}
.mahso-root .mahso-single-gateway-brand .mahso-gateway-icon{width:28px;height:28px;font-size:11px}
@media(max-width:570px){.mahso-root{padding:10px}.mahso-root>.mahso-shell{width:100%}}
@media(max-height:650px) and (min-width:650px){.mahso-root{padding-top:8px;padding-bottom:8px}.mahso-card{padding-top:17px;padding-bottom:16px}.mahso-head{margin-bottom:10px}.mahso-amount{min-height:49px}.mahso-btn{min-height:46px;margin-top:10px}.mahso-form-block{margin-bottom:10px}.mahso-gateway-fieldset{margin-top:7px}.mahso-footer{margin-top:7px}}
@media(max-width:350px) and (max-height:600px){.mahso-root{padding:6px 8px}.mahso-footer{margin-top:7px}}
