/* Base theme: https://i.looksmax.org/css/styles.css */
header { background: #000 !important; }

.token-gate { width: min(100%, 760px); margin-inline: auto; padding: 0 !important; overflow: hidden; }
.top-bar { width: min(100%, 760px); margin: 0 auto 12px; padding: 14px 18px; color: #fff; background: #000; border-radius: 8px; font-size: 17px; font-weight: 700; text-align: left; box-sizing: border-box; }
.gate-body { min-height: 420px; padding: 44px 24px 50px; display: grid; place-items: center; }
.view { width: min(100%, 560px); text-align: center; }
.view h1 { margin: 0 0 16px; font-size: 25px; }
.lead { margin: 0 0 27px; color: #555; font-size: 18px; line-height: 1.55; }
.lead.small { font-size: 15px; }

.token-mark, .status-icon { width: 64px; height: 64px; margin: 0 auto 20px; display: grid; place-items: center; color: #fff; background: #000; border-radius: 50%; font-size: 32px; font-weight: 800; }
.status-icon.success { background: #27833d; }
.status-icon.failure { background: #c62828; }

button { font: inherit; }
.primary-button, .wallet-button, .copy-button { cursor: pointer; border-radius: 4px; font-weight: 700; }
.primary-button { min-width: 190px; padding: 12px 23px; color: #fff; background: #000; border: 1px solid #000; font-size: 16px; }
.primary-button:hover, .copy-button:hover { background: #282828; }
.primary-button:focus-visible, .wallet-button:focus-visible, .copy-button:focus-visible, .text-button:focus-visible { outline: 3px solid rgba(0, 0, 0, .2); outline-offset: 2px; }
.fine-print { margin: 22px 0 0; color: #777; font-size: 12px; }

.wallet-options { display: grid; grid-template-columns: 1fr 1fr; gap: 13px; margin: 0 auto 18px; }
.wallet-button { display: flex; align-items: center; gap: 12px; padding: 13px 17px; color: #222; background: #f7f7f7; border: 1px solid #ccc; font-size: 15px; }
.wallet-button:hover { background: #eee; border-color: #777; }
.wallet-icon { width: 30px; height: 30px; display: grid; place-items: center; color: #fff; border-radius: 7px; font-weight: 800; }
.wallet-icon.phantom { background: #5947c7; }
.wallet-icon.solflare { background: #f29b24; }
.text-button { cursor: pointer; padding: 6px; color: #111; background: none; border: 0; text-decoration: underline; }

.spinner { width: 48px; height: 48px; margin: 0 auto 24px; border: 5px solid #ddd; border-top-color: #000; border-radius: 50%; animation: spin .8s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

.facts { margin: 25px auto; border: 1px solid #ddd; border-radius: 4px; text-align: left; }
.facts div { display: grid; grid-template-columns: 1fr 1.5fr; padding: 12px 15px; border-bottom: 1px solid #e5e5e5; }
.facts div:last-child { border-bottom: 0; }
.facts dt { color: #777; }
.facts dd { margin: 0; overflow-wrap: anywhere; font-weight: 700; text-align: right; }

.coupon-wrap { padding: 19px; background: #f7f7f7; border: 1px dashed #555; }
.coupon-wrap span { display: block; color: #777; font-size: 12px; text-transform: uppercase; letter-spacing: .6px; }
.coupon-wrap strong { display: block; margin: 8px 0 13px; color: #111; font-size: 28px; letter-spacing: 2px; }
.copy-button { padding: 8px 14px; color: #fff; background: #000; border: 1px solid #000; }
.error-message { padding: 11px; color: #8d1f1f; background: #fff0f0; border: 1px solid #efc7c7; }
[hidden] { display: none !important; }

@media (max-width: 540px) {
    .gate-body { min-height: 390px; padding: 34px 17px 40px; }
    .view h1 { font-size: 22px; }
    .lead { font-size: 16px; }
    .wallet-options { grid-template-columns: 1fr; }
    .facts div { grid-template-columns: 1fr; gap: 5px; }
    .facts dd { text-align: left; }
}
