:root{--bg:#ffffff;--ink:#111111;--muted:#737373;--line:#e7e4df;--soft:#f8f7f4;--accent:#6366f1;--accent-soft:#eef2ff;--success:#167f39;--error:#b3261e}*{box-sizing:border-box}body,html{margin:0;padding:0;background:var(--bg);color:var(--ink);font-family:var(--font-amina),-apple-system,BlinkMacSystemFont,"Helvetica Neue",Helvetica,Arial,sans-serif;font-weight:400;-webkit-font-smoothing:antialiased;line-height:1.5}body{min-height:100vh}button,input,select,textarea{font:inherit}a,button{color:inherit}main{min-height:100vh;padding:0 32px 96px}.site-header{max-width:1480px;margin:0 auto;padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:inline-flex;align-items:center;gap:12px;text-decoration:none;text-transform:uppercase;letter-spacing:.08em;font-size:13px}.brand img{width:156px;height:auto;display:block}.ghost-button,.icon-button,.wallet-pill{min-height:40px;display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--line);background:#fff;padding:0 14px;cursor:pointer;text-decoration:none;font-size:13px;transition:border-color .18s ease,background .18s ease}.ghost-button:hover,.icon-button:hover,.wallet-pill:hover{border-color:var(--ink);background:var(--soft)}.ghost-button:disabled{cursor:not-allowed;opacity:.45}.wallet-pill button{width:28px;height:28px;border:none;background:transparent;cursor:pointer;display:grid;place-items:center}.hero-band{max-width:1480px;min-height:430px;margin:18px auto 34px;padding:42px 0 34px;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,430px);gap:40px;align-items:center;background:#fff}.hero-copy h1{max-width:780px;margin:0;font-size:clamp(36px,4.4vw,64px);line-height:1.02;letter-spacing:0}.hero-copy p:not(.eyebrow){max-width:660px;margin:24px 0 0;color:var(--muted);font-size:17px}.hero-art{align-self:stretch;display:flex;align-items:center;justify-content:center;min-height:280px;overflow:hidden;background:#fff}.hero-art img{width:100%;height:100%;object-fit:cover;display:block}.eyebrow{margin:0 0 12px;color:var(--muted);font-size:12px;letter-spacing:.12em;text-transform:uppercase}.how-it-works{max-width:1480px;margin:0 auto 34px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border:1px solid var(--line);background:#fff}.how-it-works article{display:grid;grid-template-columns:48px minmax(0,1fr);gap:16px;align-items:start;padding:24px;border-right:1px solid var(--line)}.how-it-works article:last-child{border-right:none}.step-icon{width:48px;height:48px;display:grid;place-items:center;border:1px solid var(--line);background:var(--soft)}.how-it-works strong{display:block;margin-bottom:6px;font-size:16px}.how-it-works p{margin:0;color:var(--muted);font-size:13px;line-height:1.55}.notice{max-width:1480px;margin:0 auto 24px;padding:16px 18px;display:flex;gap:12px;border:1px solid var(--line);background:var(--soft)}.notice p{margin:0}.notice.error{border-color:color-mix(in srgb,var(--error),white 60%);color:var(--error)}.empty-panel,.loading-panel,.signed-out{max-width:620px;margin:56px auto;padding:56px 36px;text-align:center;background:#fff}.loading-panel{border:1px solid var(--line)}.empty-panel img,.signed-out img{width:126px;height:126px;object-fit:contain;margin-bottom:20px}.empty-panel h2,.loading-panel h2,.signed-out h2{margin:0 0 12px;font-size:28px;font-weight:400}.empty-panel p,.signed-out p{margin:0 auto 24px;max-width:460px;color:var(--muted)}.app-shell{max-width:1480px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start}.checkout-panel,.history-panel,.redeem-panel,.selection-panel{border:1px solid var(--line);background:#fff;padding:28px}.redeem-panel{position:sticky;top:24px}.panel-heading h2,.redeem-panel h2{margin:0;font-size:24px;font-weight:400}.redeem-panel p:not(.eyebrow){color:var(--muted);margin:14px 0 22px;font-size:14px}.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:24px}.nft-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(174px,1fr));gap:16px}.nft-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);background:#fff;padding:0;cursor:pointer;text-align:left;overflow:hidden;transition:border-color .18s ease,transform .18s ease}.nft-card:hover{border-color:var(--ink);transform:translateY(-1px)}.nft-card.selected{border-color:var(--accent);box-shadow:inset 0 0 0 1px var(--accent)}.nft-card:disabled{cursor:not-allowed;opacity:.55}.select-indicator{position:absolute;top:10px;right:10px;width:28px;height:28px;display:grid;place-items:center;border:1px solid var(--line);background:rgba(255,255,255,.88);z-index:1}.nft-card.selected .select-indicator{background:var(--accent);color:#fff;border-color:var(--accent)}.nft-image-wrap{width:100%;aspect-ratio:3/4;display:grid;place-items:center;background:var(--soft);border-bottom:1px solid var(--line)}.nft-image-wrap img{width:100%;height:100%;object-fit:contain}.nft-meta{min-height:76px;display:grid;gap:4px;padding:14px;font-size:13px}.nft-meta strong{font-family:var(--font-geist-mono),monospace;font-size:12px}.nft-skeleton{min-height:250px;display:flex;flex-direction:column;border:1px solid var(--line);background:#fff;overflow:hidden}.skeleton-image,.skeleton-line{position:relative;overflow:hidden;background:#eeeeee}.skeleton-image:after,.skeleton-line:after{content:"";position:absolute;inset:0;transform:translateX(-100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.76),transparent);animation:shimmer 1.25s ease-in-out infinite}.skeleton-image{width:100%;aspect-ratio:3/4;border-bottom:1px solid var(--line)}.skeleton-line{height:12px;margin:14px 14px 0}.skeleton-line.wide{width:72%}.skeleton-line.short{width:42%}.selection-count{display:grid;place-items:center;padding:28px 0;margin-bottom:18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.selection-count span{font-size:54px;line-height:1}.selection-count small{margin-top:8px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.checkout-panel{width:100%}.checkout-panel,.history-panel{max-width:1480px;margin:34px auto 0}.section{margin-bottom:44px}.section h3{font-size:14px;text-transform:uppercase;letter-spacing:.1em;margin:0 0 18px;font-weight:400}.section-hint{color:var(--muted);font-size:13px;margin:12px 0 0}.row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-bottom:16px}.row.four{grid-template-columns:repeat(4,minmax(0,1fr))}.row .full{grid-column:1/-1}.eth-hash-field label,.row label{display:block;font-size:12px;letter-spacing:.04em;text-transform:uppercase;margin-bottom:6px;color:var(--muted)}input,select,textarea{width:100%;padding:12px 4px;border:none;border-bottom:1px solid var(--line);font-size:14px;border-radius:0;background:#fff}input:focus,select:focus,textarea:focus{outline:none;border-bottom-color:var(--ink)}.field-error input,.field-error select,input[aria-invalid=true],select[aria-invalid=true]{border-bottom-color:var(--error)}.field-error-message{margin:6px 0 0;color:var(--error);font-size:12px;line-height:1.35}.hidden{display:none!important}.payment-options{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:28px}.pay-option{padding:22px;border:1px solid var(--line);cursor:pointer;text-align:center;font-size:13px;letter-spacing:.06em;text-transform:uppercase;transition:all .2s ease;background:#fff}.pay-option.active{border-color:var(--ink);background:var(--soft)}#card-container{padding:20px;margin-bottom:16px;min-height:90px;color:var(--muted)}#card-container,.eth-box{border:1px solid var(--line)}.eth-box{padding:40px 32px;text-align:center}.eth-box .qr{display:inline-block;padding:14px;background:#fff;margin-bottom:24px}.eth-box .qr img{display:block}.eth-label{font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:8px}.eth-address{font-family:var(--font-geist-mono),monospace;font-size:12px;word-break:break-all;color:var(--ink);margin-bottom:24px;padding:0 16px}.eth-total{font-size:16px}.eth-hash-field{margin-top:24px}.eth-hash-field input{font-family:var(--font-geist-mono),monospace;font-size:13px}.covered-payment-box{border:1px solid color-mix(in srgb,var(--success),white 68%);padding:22px;margin-top:18px;margin-bottom:18px;color:var(--success);background:color-mix(in srgb,var(--success),white 94%)}.covered-payment-box strong{display:block;font-size:14px;text-transform:uppercase;letter-spacing:.08em}.covered-payment-box p{margin:8px 0 0;font-size:13px;color:var(--ink)}.totals{border-top:1px solid var(--line);padding-top:28px}.total-line{display:flex;justify-content:space-between;gap:18px;margin-bottom:12px;font-size:14px;color:var(--muted)}.total-line span:last-child{text-align:right}.total-line.grand{color:var(--ink);font-size:18px;margin-top:20px;padding-top:20px;border-top:1px solid var(--line)}.submit-btn{width:100%;min-height:56px;padding:0 20px;display:inline-flex;align-items:center;justify-content:center;gap:10px;background:var(--ink);color:#fff;border:none;font-size:12px;letter-spacing:.12em;text-transform:uppercase;cursor:pointer;margin-top:8px}.submit-btn.compact{width:auto;padding:0 28px}.submit-btn:hover{opacity:.88}.submit-btn:disabled{opacity:.4;cursor:not-allowed}.edit-shipping-button{margin-top:18px}.payment-section{scroll-margin-top:24px}.status,.status-box{margin-top:20px;font-size:13px;color:var(--muted);min-height:20px}.status{text-align:center}.status-box.error,.status.error{color:var(--error)}.status-box.success{color:var(--success)}.status-box{display:flex;align-items:flex-start;gap:10px;max-width:100%;overflow-wrap:anywhere;word-break:break-word}.status-box span{min-width:0}.history-list{display:grid;gap:12px}.history-row{display:grid;grid-template-columns:minmax(0,1fr) 180px auto;gap:16px;align-items:center;padding:18px;border:1px solid var(--line)}.history-row p{margin:4px 0 0;color:var(--muted);font-size:13px}.history-link-list{display:flex;flex-wrap:wrap;gap:8px 14px;margin-top:8px}.history-link-list a{color:var(--ink);font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:3px}.history-token-list{display:flex;flex-wrap:wrap;gap:10px}.history-token{display:inline-flex;align-items:center;gap:10px;min-width:0;padding:6px 10px 6px 6px;border:1px solid var(--line);background:#fff}.history-token img{width:42px;aspect-ratio:3/4;height:auto;object-fit:contain;background:var(--soft)}.history-token span{min-width:0;font-size:14px;font-weight:600;overflow-wrap:anywhere}.badge{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border:1px solid var(--line);text-transform:uppercase;letter-spacing:.08em;font-size:11px}.badge.paid{color:var(--success);border-color:color-mix(in srgb,var(--success),white 68%)}.badge.not_started,.badge.pending{color:var(--muted)}.badge.failed{color:var(--error);border-color:color-mix(in srgb,var(--error),white 68%)}.spin{animation:spin .9s linear infinite}@keyframes spin{to{transform:rotate(1turn)}}@keyframes shimmer{to{transform:translateX(100%)}}@media (max-width:900px){main{padding:0 20px 72px}.hero-band{min-height:auto;padding:32px 0;grid-template-columns:1fr}.hero-art{min-height:280px}.row.four{grid-template-columns:repeat(2,minmax(0,1fr))}.how-it-works{grid-template-columns:1fr}.how-it-works article{border-right:none;border-bottom:1px solid var(--line)}.how-it-works article:last-child{border-bottom:none}.app-shell{grid-template-columns:1fr}.redeem-panel{position:static}.history-row{grid-template-columns:1fr}}@media (max-width:680px){.site-header{align-items:flex-start}.brand img{width:132px}.hero-copy h1{font-size:36px}.checkout-panel,.history-panel,.redeem-panel,.selection-panel{padding:20px}.payment-options,.row,.row.four{grid-template-columns:1fr}}