@font-face{font-family:PerkDisplay;src:url('assets/perk-display.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:PerkBody;src:url('assets/perk-body.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:PerkBody;src:url('assets/perk-body-bold.woff2') format('woff2');font-weight:700;font-style:normal;font-display:swap}
@font-face{font-family:PerkMono;src:url('assets/perk-mono.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
:root{color-scheme:dark;--bg:oklch(.13 .005 285);--surface:oklch(.17 .008 285);--ink:oklch(.95 .006 285);--muted:oklch(.7 .018 285);--line:oklch(.3 .015 285);--accent:oklch(.69 .17 295);--accent-ink:oklch(.96 .008 295);--ease:cubic-bezier(.16,1,.3,1);--mono:PerkMono,monospace;--body:PerkBody,sans-serif;--display:PerkDisplay,sans-serif;--z-world:0;--z-film:1;--z-content:2;--z-toast:50}
*{box-sizing:border-box}html{min-height:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:400 15px/1.4 var(--body);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}button{cursor:pointer;border:0}button:disabled{cursor:not-allowed}button,a,input,select{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:2px solid var(--accent);outline-offset:5px}[hidden]{display:none!important}figure,h1,h2,h3,p{margin:0}h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}img{display:block;max-width:100%;height:auto}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;left:20px;top:15px;z-index:100;padding:12px 18px;background:var(--accent);color:var(--bg);transform:translateY(-160%)}.skip-link:focus{transform:none}.world-canvas{position:fixed;inset:0;z-index:var(--z-world);pointer-events:none}.world-canvas canvas{display:block;width:100%;height:100%}.film-grain{position:fixed;inset:0;z-index:var(--z-film);pointer-events:none;opacity:.038;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.8' filter='url(%23n)'/%3E%3C/svg%3E")}
.site-header{position:relative;z-index:var(--z-content);display:flex;align-items:center;gap:28px;min-height:87px;margin:0 48px;border-bottom:1px solid var(--line)}.wordmark{display:flex;align-items:center;gap:10px;font:700 45px/.9 var(--display);letter-spacing:-.035em}.logo-cross{font:400 26px/1 var(--body);color:var(--accent)}.brand-line{font:400 9px/1.6 var(--mono);letter-spacing:.08em;color:var(--muted);padding-top:4px}.header-actions{margin-left:auto;display:flex;align-items:center;gap:27px}.text-button{padding:8px 0;background:none;font:400 11px/1.2 var(--mono);letter-spacing:.025em;color:var(--muted);transition:color .2s}.text-button:hover{color:var(--ink)}.text-button>span[aria-hidden]{margin-left:6px}.network-badge{display:flex;align-items:center;gap:8px;font:400 10px/1 var(--mono);white-space:nowrap;letter-spacing:.025em}.network-mark{display:flex;flex-direction:column;width:14px;gap:2px}.network-mark i{display:block;width:14px;height:2px;background:var(--ink);transform:skew(-25deg)}.network-mark i:nth-child(2){transform:skew(25deg)}.demo-badge{font:400 9px/1 var(--mono);letter-spacing:.06em;padding:7px 8px;border:1px solid var(--line);color:var(--muted)}.count-badge{display:inline-grid;place-items:center;min-width:17px;height:17px;font-size:10px;color:var(--ink);border:1px solid var(--line);margin-left:5px}
.app-shell{position:relative;z-index:var(--z-content);padding:0 48px}.reward-stage{position:relative;height:max(360px,calc(100svh - 490px));min-height:360px;pointer-events:none}.hero-copy{position:absolute;left:0;top:50px;max-width:43%;pointer-events:auto}.hero-kicker{font:400 10px/1.3 var(--mono);letter-spacing:.04em;color:var(--muted);margin-bottom:18px}.hero-kicker>span{color:var(--accent);margin-right:7px;font-size:16px}h1{font:700 clamp(96px,10.4vw,168px)/.87 var(--display);letter-spacing:-.025em;white-space:nowrap}.real-line{font-style:normal;display:block;transform:skewX(-7deg);transform-origin:left bottom;padding-right:15px}.title-period{color:var(--accent)}.hero-description{font-size:15px;line-height:1.6;color:var(--muted);margin-top:23px}.hero-note{margin-top:25px;display:flex;align-items:center;gap:10px;font:400 9px/1.3 var(--mono);letter-spacing:.025em;color:var(--muted)}.note-cross{font-size:22px;color:var(--accent);line-height:1}.model-heading{position:absolute;right:0;top:39px;display:flex;align-items:center;gap:12px;font:400 10px/1.3 var(--mono);letter-spacing:.055em;text-transform:uppercase}.model-heading h2{font:inherit;color:var(--ink)}#selected-model-code{color:var(--accent)}.model-divider{width:22px;height:1px;background:var(--muted)}.selected-category{display:none}.model-caption{position:absolute;left:60%;bottom:38px;display:flex;align-items:center;gap:11px;font:400 9px/1.4 var(--mono);color:var(--muted);letter-spacing:.06em;white-space:nowrap}.caption-line{width:28px;height:1px;background:var(--accent)}#scene-progress{color:var(--ink)}.scene-controls{position:absolute;right:0;bottom:36px;display:flex;align-items:center;gap:18px;font:400 9px/1.3 var(--mono);pointer-events:auto}.scene-controls button{font:inherit;color:var(--muted);background:none;padding:4px 0}.scene-controls button:hover{color:var(--ink)}.scene-mark{display:none;color:var(--muted)}.scene-loading{position:absolute;top:46%;left:60%;font:400 12px/1.4 var(--mono);color:var(--muted)}#scene-fallback{position:absolute;right:7%;top:70px;width:40%;display:flex;flex-direction:column;align-items:center;justify-content:center}#scene-fallback figure{width:250px;filter:grayscale(1) contrast(1.1)}#scene-fallback p{font-size:12px;line-height:1.5;color:var(--muted);max-width:28ch;text-align:center}
.control-deck{display:grid;grid-template-columns:1fr 1.1fr 1.04fr;gap:38px;padding:25px 0 22px;border-top:1px solid var(--line);background:oklch(.13 .005 285 / .93);position:relative;min-height:245px}.control-deck>div,.control-deck>form{min-width:0}.control-deck h2{font:400 11px/1.2 var(--mono);letter-spacing:.035em;display:flex;align-items:center;gap:11px;margin-bottom:20px}.step-number{color:var(--accent);font-size:10px}.reward-options{display:flex;flex-direction:column;gap:0}.reward-option{display:flex;align-items:center;width:100%;gap:10px;background:none;color:var(--muted);padding:7px 0;border-bottom:1px solid oklch(.24 .009 285);text-align:left;font-size:13px;transition:color .15s}.option-indicator{width:5px;height:5px;background:oklch(.42 .012 285);flex:0 0 5px}.reward-option>strong{font:400 12px/1.2 var(--mono);margin-left:auto;min-width:44px;text-align:right}.choice-arrow{color:var(--accent);opacity:0;font-size:17px;line-height:1}.reward-option.is-selected,.reward-option:hover{color:var(--ink)}.reward-option.is-selected>.option-indicator{background:var(--accent);box-shadow:0 0 10px oklch(.69 .17 295 / .45)}.reward-option.is-selected>.choice-arrow{opacity:1}.panel-footnote{font:400 10px/1.45 var(--mono);color:var(--muted);margin-top:12px;letter-spacing:-.02em}.credit-heading{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin-top:0}.credit-total{display:flex;align-items:baseline;gap:8px;white-space:nowrap}.credit-total>strong{font:400 33px/1 var(--mono);letter-spacing:-.06em}.credit-total>span{font:400 12px/1.2 var(--mono);color:var(--muted)}#progress-percent{font:400 12px/1.2 var(--mono);color:var(--accent)}.progress-track{position:relative;overflow:hidden;width:100%;height:3px;margin-top:17px;background:var(--line)}.progress-fill{height:100%;width:100%;background:var(--accent);transform:scaleX(var(--progress));transform-origin:left;transition:transform 1.1s var(--ease)}.progress-caption{font:400 10px/1.4 var(--mono);letter-spacing:.025em;color:var(--muted);margin-top:11px}.progress-caption>span{color:var(--ink)}.goal-status{font-size:11px;line-height:1.5;color:var(--muted);min-height:32px;margin-top:7px;max-width:40ch}.mint-button{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:12px;background:var(--accent);color:var(--accent-ink);padding:13px 15px;font:700 13px/1 var(--body);min-height:43px;transition:background .2s,transform .2s var(--ease);border:1px solid var(--accent)}.mint-button>:last-child{font-size:22px;font-weight:400;line-height:1}.mint-button:hover:not(:disabled){background:oklch(.61 .2 295);transform:translateY(-1px)}.mint-button:disabled{color:oklch(.58 .015 285);background:none;border-color:var(--line)}.trade-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:-3px}.trade-fields label{min-width:0;display:flex;flex-direction:column;gap:5px}.trade-fields label>span:first-child{font-size:10px;color:var(--muted)}.pair-field select,.input-shell{width:100%;min-width:0;height:35px;border:1px solid var(--line);background:var(--surface);border-radius:0;font-size:12px}.pair-field select{padding:0 24px 0 10px;appearance:auto}.input-shell{display:flex;align-items:center;gap:5px;padding:0 10px}.input-shell>span{color:var(--muted);font-family:var(--mono)}.input-shell input{min-width:0;width:100%;background:none;border:0;font:400 12px/1 var(--mono);padding:0}.input-shell:focus-within{outline:2px solid var(--accent);outline-offset:2px}.input-shell input:focus-visible{outline:none}.amount-options{display:flex;gap:6px;margin-top:7px}.amount-options button{flex:1;padding:4px 8px;min-height:24px;font:400 10px/1.2 var(--mono);border:1px solid var(--line);background:none;color:var(--muted);transition:border-color .15s,color .15s}.amount-options button:hover,.amount-options button.is-selected{color:var(--ink);border-color:oklch(.58 .07 295)}.reward-estimate{display:flex;align-items:center;justify-content:space-between;gap:9px;font:400 9px/1.3 var(--mono);letter-spacing:.02em;margin-top:12px;color:var(--muted)}.reward-estimate>strong{font-size:11px;font-weight:400;color:var(--ink)}.trade-button{display:flex;align-items:center;justify-content:space-between;width:100%;padding:13px 15px;margin-top:10px;min-height:43px;background:var(--ink);color:var(--bg);font:700 13px/1 var(--body);transition:background .15s,transform .2s var(--ease)}.trade-button>:last-child{font-size:22px;font-weight:400;line-height:1}.trade-button:hover:not(:disabled){background:oklch(.84 .04 295);transform:translateY(-1px)}.trade-button:disabled{opacity:.6}.trade-panel>.panel-footnote{margin-top:7px;font-size:9px}.field-error{font-size:12px;color:oklch(.79 .12 20);margin-top:8px}.storage-notice{font-size:12px;color:var(--muted);margin:12px 0}.activity-details{border-top:1px solid var(--line);margin-bottom:0;font:400 9px/1.4 var(--mono);color:var(--muted)}.activity-details summary{cursor:pointer;display:flex;justify-content:space-between;gap:15px;align-items:center;list-style:none;padding:10px 0;letter-spacing:.03em}.activity-details summary::after{content:'+';color:var(--ink);font-size:14px}.activity-details[open] summary::after{content:'−'}.activity-details summary>span{margin-left:auto;font-size:9px}.activity-details strong{font-weight:400;color:var(--ink)}.activity-inner{padding-bottom:15px}.activity-list,.collection-list{list-style:none;padding:0;margin:0}.activity-item{display:flex;align-items:center;gap:12px;border-top:1px solid var(--line);padding:10px 0}.activity-icon{color:var(--accent);font:400 18px/1 var(--body)}.activity-copy{display:flex;flex-direction:column;gap:3px;flex:1;min-width:0}.activity-title{font-size:12px;color:var(--ink)}.activity-meta{font-size:10px;color:var(--muted);overflow-wrap:anywhere}.activity-value{font-size:12px;color:var(--ink);white-space:nowrap}.empty-state{font:400 13px/1.6 var(--body);color:var(--muted);padding:18px 0;max-width:42ch}.site-footer{position:relative;z-index:var(--z-content);display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 48px;padding:14px 0 19px;border-top:1px solid var(--line);color:var(--muted);font:400 8px/1.5 var(--mono);letter-spacing:.035em}.site-footer .text-button{font-size:9px}.footer-separator{margin:0 8px}
.toast{position:fixed;left:50%;bottom:22px;z-index:var(--z-toast);transform:translateX(-50%);padding:14px 18px;width:max-content;max-width:calc(100% - 32px);background:oklch(.19 .018 285);color:var(--ink);border:1px solid oklch(.43 .09 295);font:400 12px/1.5 var(--body);box-shadow:0 12px 40px oklch(0 0 0 / .3)}dialog{width:min(470px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;background:var(--bg);color:var(--ink);border:1px solid var(--line);padding:28px;font:inherit;box-shadow:0 25px 100px oklch(0 0 0 / .6)}dialog::backdrop{background:oklch(.08 .01 285 / .82)}.dialog-close{position:absolute;right:14px;top:12px;font:400 25px/1 var(--body);height:30px;width:30px;background:none;color:var(--muted)}.dialog-close:hover{color:var(--ink)}.pass-brand{display:flex;align-items:center;gap:14px;padding-right:35px;border-bottom:1px solid var(--line);padding-bottom:16px}.pass-brand>span:first-child{font:700 36px/.9 var(--display);letter-spacing:-.025em}.pass-seal{font:400 9px/1.3 var(--mono);color:var(--muted)}.mint-kicker,.dialog-kicker{font:400 10px/1.3 var(--mono);letter-spacing:.05em;color:var(--accent);margin:22px 0 8px}.mint-dialog h2{font:700 48px/1 var(--display);text-transform:uppercase;letter-spacing:-.015em}.mint-art{display:grid;place-items:center;min-height:170px;height:190px;overflow:hidden;margin:6px -12px}.mint-art img{width:100%;height:100%;object-fit:contain;filter:grayscale(1)}.mint-art img[src^="data:"]{filter:none;object-fit:cover;object-position:67% 40%}.pass-ticket{display:grid;grid-template-columns:1fr 1fr;gap:15px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:15px 0}.pass-ticket>div:not(.pass-ticket-id){display:flex;flex-direction:column;gap:5px}.pass-ticket>div>span{font:400 9px/1.4 var(--mono);color:var(--muted)}.pass-ticket strong{font:400 17px/1 var(--mono)}.pass-ticket-id{grid-column:1/-1;display:flex;flex-direction:column;gap:5px;border-top:1px dashed var(--line);padding-top:13px;overflow-wrap:anywhere}.mint-disclaimer{font:400 10px/1.5 var(--mono);color:var(--muted);margin:13px 0 16px}.dialog-secondary{padding:17px 0 0;background:none;color:var(--muted);width:100%;font-size:12px}.dialog-secondary:hover{color:var(--ink)}.how-dialog{width:min(520px,calc(100% - 32px));padding:32px}.how-dialog h2,.collection-dialog h2{font:700 62px/.95 var(--display);letter-spacing:-.01em;margin:12px 0 24px}.how-steps{padding-left:23px;margin:0}.how-steps li{padding-left:5px;margin-bottom:20px}.how-steps strong{font-weight:700;font-size:15px}.how-steps p{margin-top:7px;font-size:13px;line-height:1.6;color:var(--muted)}.how-footnote{font:400 10px/1.6 var(--mono);padding-top:17px;border-top:1px solid var(--line);color:var(--muted)}.collection-dialog{width:min(590px,calc(100% - 32px));padding:30px}.pass-card{display:flex;align-items:center;gap:14px;border-top:1px solid var(--line);padding:16px 0}.pass-art{width:60px;height:58px;object-fit:contain;filter:grayscale(1);opacity:.8}.pass-copy{flex:1;min-width:0}.pass-badge{font:400 8px/1.3 var(--mono);color:var(--accent)}.pass-name{font-size:14px;margin:4px 0;font-weight:700}.pass-meta{font:400 9px/1.5 var(--mono);color:var(--muted);overflow-wrap:anywhere}.pass-download{background:none;color:var(--ink);padding:9px 12px;border:1px solid var(--line);font-size:11px;white-space:nowrap}.pass-download:hover{border-color:var(--accent)}
@media(min-width:1800px){.site-header,.site-footer{margin-left:64px;margin-right:64px}.app-shell{padding:0 64px}.reward-stage{height:calc(100svh - 490px);min-height:430px}.hero-copy{top:66px}h1{font-size:190px}.hero-description{font-size:17px}.control-deck{gap:58px;padding-top:30px}.control-deck h2{font-size:12px}.reward-option{font-size:15px;padding:9px 0}.credit-total>strong{font-size:39px}.hero-kicker,.model-heading{font-size:12px}.model-caption{font-size:11px}.site-footer{font-size:10px}.panel-footnote{font-size:11px}.scene-controls{font-size:10px}.trade-fields label>span:first-child{font-size:12px}.pair-field select,.input-shell{height:39px;font-size:14px}.input-shell input{font-size:14px}}
@media(max-width:1080px){.site-header{margin:0 28px;gap:20px}.app-shell{padding:0 28px}.site-footer{margin:0 28px}.header-actions{gap:16px}.brand-line{display:none}.control-deck{gap:24px;grid-template-columns:.9fr 1.05fr 1.1fr}.control-deck h2{font-size:9px;gap:8px}.hero-copy{top:54px}.hero-kicker{font-size:9px}h1{font-size:116px}.hero-description{font-size:13px}.hero-note{font-size:8px}.model-heading{font-size:9px;gap:9px}.model-caption{left:51%;font-size:8px;bottom:30px}.scene-controls{font-size:8px;bottom:28px}.goal-status{font-size:10px}.credit-total>strong{font-size:28px}.credit-total>span{font-size:10px}.reward-estimate{font-size:8px}.reward-estimate>strong{font-size:9px}.trade-fields{gap:7px}.pair-field select{padding-left:6px;font-size:11px}.input-shell{padding:0 7px}.mint-button,.trade-button{font-size:12px}.panel-footnote{font-size:9px}.text-button{font-size:10px}}
@media(max-width:800px){.site-header{min-height:75px;margin:0 22px;gap:16px}.header-actions{gap:16px}.header-actions .network-badge{font-size:9px}.header-actions .text-button{font-size:9px}.header-actions .text-button>span[aria-hidden]{display:none}.demo-badge{font-size:8px}.wordmark{font-size:39px}.app-shell{padding:0 22px}.site-footer{margin:0 22px}.reward-stage{height:590px;min-height:590px}.hero-copy{top:30px;max-width:75%}.hero-kicker{font-size:9px;margin-bottom:11px}h1{font-size:98px;line-height:.88}.hero-description{font-size:13px;line-height:1.55;margin-top:15px}.hero-note{display:none}.model-heading{top:28px;right:0;flex-direction:column;align-items:flex-end;gap:6px;font-size:9px}.model-divider{display:none}.model-caption{left:0;bottom:17px;font-size:10px;gap:9px}.scene-controls{bottom:16px;right:0;font-size:10px}.control-deck{grid-template-columns:1fr 1fr;gap:28px 24px;padding:22px 0 23px;background:var(--bg)}.control-deck h2{font-size:10px;gap:8px;margin-bottom:16px}.trade-panel{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;gap:6px 22px;border-top:1px solid var(--line);padding-top:22px}.trade-panel h2{grid-column:1/-1;margin-bottom:9px}.trade-fields{grid-column:1;grid-row:2/4;gap:10px;align-self:center}.trade-fields label>span:first-child{font-size:11px}.pair-field select,.input-shell{font-size:12px;height:41px}.input-shell input{font-size:12px}.amount-options{grid-column:1;grid-row:4;margin-top:0}.amount-options button{font-size:11px;min-height:29px}.reward-estimate{grid-column:2;grid-row:2;font-size:10px;margin-top:0;align-self:center}.reward-estimate>strong{font-size:10px}.trade-panel .trade-button{grid-column:2;grid-row:3;margin:0;min-height:42px}.trade-panel>.panel-footnote{grid-column:2;grid-row:4;font-size:10px;margin-top:2px;align-self:center}.trade-panel .field-error{grid-column:1/-1;grid-row:5}.credit-total>strong{font-size:30px}.credit-total>span{font-size:11px}.progress-caption{font-size:10px}.goal-status{font-size:11px;min-height:32px}.mint-button{font-size:12px}.reward-option{font-size:13px;padding:8px 0}.panel-footnote{font-size:10px}.site-footer{font-size:9px;padding:15px 0 20px}.site-footer .text-button{font-size:10px}.activity-details{font-size:10px}.activity-details summary{padding:12px 0}#scene-fallback{top:230px;right:10%;width:75%}#scene-fallback figure{width:180px}#scene-fallback p{font-size:11px}.scene-loading{top:60%;left:50%;transform:translateX(-50%);white-space:nowrap}}
@media(max-width:520px){.site-header{margin:0 18px;gap:10px;min-height:68px}.header-actions{gap:12px}.header-actions .network-badge{display:none}.header-actions .text-button{font-size:8px}.wordmark{font-size:36px}.logo-cross{font-size:21px}.demo-badge{padding:6px;font-size:8px}.app-shell{padding:0 18px}.site-footer{margin:0 18px;align-items:flex-start;gap:18px}.site-footer>span{max-width:34ch;font-size:8px;line-height:1.8}.footer-separator{margin:0 4px}.reward-stage{height:544px;min-height:544px}.hero-copy{top:29px;max-width:78%}.hero-kicker{font-size:8px;margin-bottom:12px}.hero-kicker>span{font-size:12px;margin-right:4px}h1{font-size:88px}.hero-description{margin-top:13px;font-size:12px;line-height:1.5}.model-heading{top:31px;font-size:8px;gap:6px}.model-caption{font-size:8px;bottom:19px;left:0;gap:7px}.caption-line{width:15px}.scene-controls{font-size:8px;bottom:17px;gap:7px}.control-deck{grid-template-columns:1fr;gap:26px;padding-top:22px;background:var(--bg)}.control-deck h2{font-size:11px;margin-bottom:13px}.choose-panel .reward-options{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px}.reward-option{padding:9px 0;font-size:13px}.reward-option>strong{font-size:11px;min-width:35px}.choice-arrow{font-size:15px}.choose-panel>.panel-footnote{font-size:11px;margin-top:12px}.progress-panel{border-top:1px solid var(--line);padding-top:24px}.progress-panel h2{margin-bottom:17px}.credit-total>strong{font-size:36px}.credit-total>span{font-size:13px}.credit-heading>#progress-percent{font-size:13px}.progress-caption{font-size:11px}.goal-status{font-size:12px;min-height:0;margin-top:8px}.mint-button{margin-top:16px;min-height:48px;font-size:14px}.trade-panel{display:block;grid-column:auto;padding-top:24px}.trade-panel h2{margin-bottom:17px}.trade-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px}.trade-fields label>span:first-child{font-size:12px}.pair-field select,.input-shell{height:43px;font-size:14px}.input-shell input{font-size:14px}.amount-options{margin-top:8px;gap:8px}.amount-options button{font-size:11px;min-height:30px}.reward-estimate{font-size:10px;margin-top:14px}.reward-estimate>strong{font-size:12px}.trade-panel .trade-button{margin-top:12px;min-height:48px;font-size:14px}.trade-panel>.panel-footnote{text-align:center;font-size:11px;margin-top:9px}.toast{font-size:12px;bottom:16px;line-height:1.5}.activity-details summary>span{font-size:9px}.pass-card{gap:10px}.pass-art{width:46px}.pass-meta{font-size:8px}.pass-download{font-size:10px;padding:8px}.mint-dialog h2{font-size:42px}.pass-seal{font-size:8px}.how-dialog{padding:27px}.how-dialog h2,.collection-dialog h2{font-size:56px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.trade-button:hover,.mint-button:hover{transform:none}}
html[data-motion="paused"] .progress-fill{transition-duration:0s}

/* Readable controls, independent of the theatrical display scale. */
.header-actions .text-button,.network-badge,.demo-badge{font-size:11px}.brand-line{font-size:10px}.hero-kicker,.model-heading{font-size:11px}.hero-note,.scene-controls,.model-caption{font-size:10px}.control-deck h2{font-size:12px}.reward-option{font-size:14px}.reward-option>strong,.credit-total>span,#progress-percent,.progress-caption{font-size:12px}.goal-status,.panel-footnote,.trade-panel>.panel-footnote{font-size:12px}.trade-fields label>span:first-child{font-size:12px}.pair-field select,.input-shell,.input-shell input{font-size:14px}.amount-options button{font-size:12px;min-height:28px}.reward-estimate,.reward-estimate>strong{font-size:11px}.activity-details,.activity-details summary>span{font-size:10px}.site-footer,.site-footer .text-button{font-size:10px}
@media(max-width:1080px) and (min-width:801px){.control-deck h2{font-size:10px}.reward-option{font-size:13px}.credit-total>span{font-size:11px}.reward-estimate{display:block;font-size:10px}.reward-estimate>strong{display:block;margin-top:4px}.goal-status{font-size:11px}.trade-panel>.panel-footnote{font-size:10px}.model-caption,.scene-controls{font-size:9px}}
@media(max-width:520px){.header-actions .text-button,.demo-badge{font-size:10px}.hero-kicker,.model-heading{font-size:9px}.model-caption,.scene-controls{font-size:9px}.site-footer{font-size:9px}.site-footer>span{font-size:9px}.control-deck h2{font-size:12px}.credit-total>span{font-size:13px}.reward-estimate>strong{font-size:12px}}

@media(max-width:800px){.control-deck{grid-template-columns:1fr;gap:24px}.choose-panel .reward-options{display:grid;grid-template-columns:1fr 1fr;gap:5px 24px}.trade-panel,.progress-panel{grid-column:1/-1}.progress-panel{border-top:1px solid var(--line);padding-top:24px}.trade-panel h2{margin-bottom:12px}}
/* Keep the object and the first trade in the same portrait viewport. */
.hero-note{display:none}.hero-copy{top:36px}h1{font-size:clamp(96px,9.5vw,148px)}.hero-description{margin-top:20px}
@media(min-width:1800px){h1{font-size:184px}.hero-copy{top:58px}}
@media(max-width:800px){.reward-stage{height:350px;min-height:350px}.hero-copy{top:20px;max-width:80%}.hero-kicker{margin-bottom:9px;font-size:9px}h1{font-size:66px;line-height:1;white-space:nowrap}h1 br{display:none}.real-line{display:inline-block;margin-left:7px;transform:skewX(-7deg)}.hero-description{font-size:12px;margin-top:9px;line-height:1.5}.hero-description br{display:none}.model-heading{top:24px;font-size:8px}.model-caption{bottom:16px;font-size:9px}.scene-controls{bottom:15px;font-size:9px}.control-deck{gap:20px;padding-top:18px}.control-deck h2{font-size:11px;margin-bottom:11px}.choose-panel .reward-options{gap:1px 22px}.reward-option{padding:7px 0}.choose-panel>.panel-footnote{font-size:11px;margin-top:8px}.trade-panel,.progress-panel{padding-top:18px}.trade-panel h2{margin-bottom:12px}.trade-fields label>span:first-child{font-size:11px}.pair-field select,.input-shell{height:36px;font-size:13px}.input-shell input{font-size:13px}.trade-panel .trade-button{min-height:43px}.trade-panel>.panel-footnote{font-size:11px}.progress-panel h2{margin-bottom:12px}.progress-caption,.goal-status{font-size:11px}.progress-track{margin-top:13px}.mint-button{min-height:43px;margin-top:12px}#scene-fallback{top:auto;bottom:48px;right:calc(50% - 68px);width:136px}#scene-fallback figure{width:136px}#scene-fallback p{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}.scene-loading{top:60%}}
@media(max-width:520px){.reward-stage{height:335px;min-height:335px}h1{font-size:60px}.hero-copy{max-width:85%}.hero-kicker{font-size:8px}.hero-description{max-width:31ch;font-size:11px}.model-heading{font-size:8px;top:24px}.model-caption,.scene-controls{font-size:8px}.control-deck{gap:19px}.control-deck h2{font-size:11px}.reward-option{font-size:13px}.reward-option>strong{font-size:11px}.amount-options button{font-size:11px;min-height:25px}.credit-total>strong{font-size:31px}.credit-total>span{font-size:12px}.reward-estimate{font-size:10px;margin-top:11px}.reward-estimate>strong{font-size:11px}.trade-panel .trade-button{margin-top:10px}.trade-panel>.panel-footnote{margin-top:7px}}
.mint-button{background:oklch(.53 .19 295);border-color:oklch(.53 .19 295)}.mint-button:hover:not(:disabled){background:oklch(.48 .19 295)}.mint-button:disabled{background:none;border-color:var(--line)}
.mint-art{display:flex;align-items:center;justify-content:center;height:230px}
.mint-art img{min-width:0;min-height:0;max-height:100%;height:100%;width:100%;flex:0 1 100%}
.mint-art img[src^="data:"]{object-fit:contain;object-position:center}

/* A larger catalog stays inside the same simple control deck. */
.reward-filters{display:flex;align-items:center;gap:18px;margin:-3px 0 9px;border-bottom:1px solid var(--line)}
.reward-filters button{background:none;padding:7px 0 9px;color:var(--muted);font:400 10px/1.3 var(--mono);border-bottom:1px solid transparent;margin-bottom:-1px;white-space:nowrap}
.reward-filters button span{font-size:8px;opacity:.6;margin-left:3px}
.reward-filters button.is-selected{color:var(--ink);border-bottom-color:var(--accent)}
.reward-options{max-height:184px;overflow-y:auto;overscroll-behavior:contain;padding-right:7px;scrollbar-width:thin;scrollbar-color:#514265 transparent}
.reward-options::-webkit-scrollbar{width:4px}.reward-options::-webkit-scrollbar-thumb{background:#514265}
.reward-option[hidden]{display:none!important}
#mint-claim{width:100%;margin-top:4px}.pass-save{width:100%;display:flex;justify-content:center;gap:14px;margin-top:9px}
.pass-actions{display:flex;flex-direction:column;gap:8px;align-items:flex-end}.pass-status{display:block;color:var(--muted);font:400 10px/1.4 var(--mono);margin-top:7px}
.pass-actions .pass-download{white-space:nowrap}.pass-actions .pass-claim{padding:9px 12px;background:#2a1b43;border:1px solid #715491;font:500 11px/1.2 var(--body)}

.claim-dialog{width:min(660px,calc(100% - 36px));max-height:calc(100svh - 36px);padding:32px;overflow-y:auto;background:#0c0c11;border:1px solid #37323f;color:var(--ink)}
.claim-dialog h2{font:700 52px/.98 var(--display);letter-spacing:-.012em;max-width:90%}.claim-disclaimer{color:var(--muted);font-size:11px;margin:12px 0 23px}
.claim-steps{display:flex;gap:0;padding:0;margin:0 0 27px;list-style:none;counter-reset:claim-step;border-bottom:1px solid var(--line)}
.claim-step{flex:1;padding:0 7px 12px;color:#75717d;font:400 10px/1.3 var(--mono);counter-increment:claim-step;border-bottom:1px solid transparent;margin-bottom:-1px}
.claim-step::before{content:"0" counter(claim-step) " / ";color:inherit}.claim-step.is-current{color:var(--ink);border-bottom-color:var(--accent)}
.claim-intro{margin-bottom:18px;font-size:15px;line-height:1.55;color:var(--muted)}.claim-intro strong{color:var(--ink)}
.claim-methods{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-bottom:18px}
.claim-method{display:flex;flex-direction:column;gap:11px;align-items:flex-start;text-align:left;padding:19px 14px;min-height:134px;background:#141218;border:1px solid #322d39;transition:border-color 160ms cubic-bezier(.22,1,.36,1),background-color 160ms cubic-bezier(.22,1,.36,1)}
.claim-method:hover{border-color:#8a77a3}.claim-method.is-selected,.claim-method[aria-pressed="true"]{background:#221632;border-color:var(--accent)}
.claim-method-title{font:600 16px/1.25 var(--body);color:var(--ink)}.claim-method-meta{color:var(--muted);font-size:11px;line-height:1.5}
.claim-notice{border-left:2px solid #6b577e;padding:3px 0 3px 13px;color:var(--muted);font-size:12px;line-height:1.6;margin:17px 0}.claim-notice strong{color:var(--ink)}
.claim-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px 14px;margin:20px 0}.claim-field{display:flex;flex-direction:column;gap:6px;min-width:0}.claim-field label{font-size:12px;color:#d3cddc}.claim-field .optional{color:var(--muted);font-size:10px}.claim-wide{grid-column:1/-1}
.claim-field input,.claim-field select,.claim-field textarea{display:block;width:100%;min-width:0;border:1px solid #38323f;border-radius:0;background:#131117;padding:12px 13px;color:var(--ink);font:400 14px/1.4 var(--body);appearance:auto}.claim-field input::placeholder,.claim-field textarea::placeholder{color:#696371}.claim-field textarea{resize:vertical;min-height:80px}.claim-field [aria-invalid="true"]{border-color:#d396a7}
.claim-error{color:#f1adb9;font-size:12px;line-height:1.5;margin:12px 0}.claim-error:empty{display:none}.claim-error a{text-decoration:underline}
.claim-summary{display:grid;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin:20px 0}.claim-summary-row{display:flex;justify-content:space-between;gap:22px;padding:13px 0;border-bottom:1px solid #27232d;align-items:flex-start}.claim-summary-row:last-child{border-bottom:0}.claim-summary-row>span:first-child,.claim-summary-row dt{flex:0 0 110px;color:var(--muted);font:400 10px/1.5 var(--mono);text-transform:uppercase}.claim-summary-row>span:last-child,.claim-summary-row dd{margin:0;text-align:right;font-size:14px;line-height:1.5;overflow-wrap:anywhere}
.claim-actions{display:flex;gap:12px;margin-top:25px;align-items:center}.claim-next{flex:1;padding:14px 18px;min-height:49px;background:#dcd8e7;color:#14101b;font-weight:600;display:flex;align-items:center;justify-content:space-between}.claim-next:disabled{opacity:.45;cursor:not-allowed}.claim-back{background:none;border:1px solid #403747;padding:14px 18px;min-height:49px;color:var(--muted);font-size:12px}
.claim-confirmation{text-align:left}.claim-check{display:grid;place-items:center;width:46px;height:46px;color:var(--accent);border:1px solid #6e548f;font-size:24px;margin:7px 0 20px}.claim-confirmation h3{font:700 38px/1 var(--display);text-transform:uppercase;margin:0 0 12px}.claim-order-id{font:400 11px/1.4 var(--mono);color:var(--muted);overflow-wrap:anywhere;margin:17px 0}.claim-confirmation p{line-height:1.6}.claim-form{margin:0}
@media(max-width:760px){.reward-options{max-height:174px;padding-right:5px}.reward-filters{gap:22px;margin-bottom:9px}.reward-filters button{font-size:10px}.claim-dialog{width:calc(100% - 24px);padding:24px 20px}.claim-dialog h2{font-size:43px}.claim-methods{grid-template-columns:1fr;gap:8px}.claim-method{padding:15px;min-height:0;gap:5px}.claim-method-title{font-size:15px}.claim-method-meta{font-size:11px}.claim-steps{margin-bottom:22px}.claim-step{font-size:9px;padding-right:4px;padding-left:0}.claim-fields{gap:14px 12px}.claim-summary-row{gap:13px}.claim-summary-row>span:first-child,.claim-summary-row dt{flex-basis:85px}.claim-summary-row>span:last-child,.claim-summary-row dd{font-size:12px}.pass-actions{align-items:flex-start}.claim-actions{gap:8px}.claim-back{padding:14px}.claim-next{padding:14px}.claim-disclaimer{font-size:10px}.claim-wide{grid-column:1/-1}}
@media(prefers-reduced-motion:reduce){.claim-method{transition:none}}
.claim-step::before{content:none}.claim-step-title{font:700 32px/1.05 var(--display);margin:0 0 11px;letter-spacing:-.01em}
.claim-actions .claim-back.dialog-secondary{width:auto;flex:0 0 auto;margin:0}
.claim-actions .claim-next.trade-button{width:auto;flex:1 1 0%;min-width:0;margin:0;white-space:nowrap;justify-content:center;text-align:center}
.claim-methods{border:0;padding:0;min-width:0}.claim-method-copy{display:flex;flex-direction:column;gap:8px}.claim-method input[type="radio"]{accent-color:var(--accent);width:15px;height:15px;margin:0}
.claim-field>span:first-child{font-size:12px;color:#d3cddc}.claim-summary-row dd{white-space:pre-line}.claim-confirmation>.claim-next{width:100%;margin-top:20px}
@media(max-width:760px){.claim-field input,.claim-field select,.claim-field textarea{font-size:16px}.claim-step-title{font-size:29px}.claim-method{flex-direction:row;gap:12px}.claim-method input[type="radio"]{flex:0 0 15px;margin-top:2px}.claim-method-copy{gap:4px}}
.claim-optional{border-top:1px solid var(--line);margin:4px 0 16px}.claim-optional summary{padding:13px 0;color:var(--muted);font-size:12px;cursor:pointer;list-style-position:inside}.claim-optional[open] summary{color:var(--ink)}.claim-optional .claim-fields{margin-top:3px}
@media(max-width:760px){.claim-fields:has(#claim-fullName)>.claim-field:nth-child(-n+2){grid-column:1/-1}.claim-optional summary{font-size:11px;line-height:1.6}}
.header-wallet{background:var(--ink);color:var(--bg,#09090b);padding:11px 14px;min-height:38px;white-space:nowrap;font:600 11px/1.2 var(--body)}
.header-wallet:hover{background:var(--accent)}
.mode-switch{display:flex;gap:16px;border-bottom:1px solid var(--line);margin:-2px 0 15px}
.mode-switch button{background:none;color:var(--muted);font:400 11px/1.2 var(--mono);padding:0 0 10px;border-bottom:1px solid transparent}
.mode-switch button.is-selected{color:var(--ink);border-color:var(--accent)}
.wallet-eyebrow{font:400 9px/1.4 var(--mono);letter-spacing:.04em;color:var(--muted);overflow-wrap:anywhere;margin:0 0 9px}
.wallet-status{font:500 14px/1.5 var(--body);margin:0;min-height:42px;max-width:38ch}
.wallet-boost{font:400 11px/1.4 var(--mono);color:var(--accent);margin:7px 0 10px}
.wallet-panel .trade-button{margin-top:8px}
.wallet-observed{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-top:15px}
.wallet-observed>span{font:400 9px/1.4 var(--mono);color:var(--muted)}
.wallet-observed>strong{font:500 16px/1.2 var(--body);white-space:nowrap}
.wallet-mini-actions{display:flex;flex-wrap:wrap;gap:0 13px;align-items:center;margin-top:7px}
.wallet-mini-actions>span{flex-basis:100%;font:400 11px/1.5 var(--body);color:var(--muted)}
.wallet-mini-actions .text-button{font-size:10px;min-height:32px}
.wallet-panel .panel-footnote{font-size:10px;line-height:1.5;margin-top:8px}
.wallet-panel .is-error{color:#efb9bb}
.live-reward-notice{border-left:2px solid var(--accent);padding-left:10px;margin:12px 0 0;font:400 11px/1.5 var(--body);color:var(--muted)}
.wallet-dialog{width:500px;max-width:calc(100vw - 36px);padding:32px;border:1px solid var(--line);background:#0b0b0f;color:var(--ink);max-height:calc(100dvh - 36px);overflow:auto}
.wallet-dialog::backdrop{background:rgb(0 0 0 / .78)}
.wallet-dialog h2{font:700 42px/1.03 var(--display);letter-spacing:-.02em;margin:12px 0}
.wallet-dialog-description{font:400 13px/1.6 var(--body);color:var(--muted);margin:0 0 22px;max-width:40ch}
.wallet-list{display:grid;gap:9px}
.wallet-choice{display:flex;align-items:center;justify-content:space-between;gap:15px;min-height:54px;width:100%;padding:15px 16px;text-align:left;border:1px solid var(--line);background:#141218;font:500 14px/1.4 var(--body);color:var(--ink)}
.wallet-choice:hover{border-color:var(--accent);background:#211a2c}
.wallet-choice>span:last-child{font:400 10px/1.4 var(--mono);color:var(--muted)}
.wallet-missing,.wallet-connected-address{font:400 13px/1.6 var(--body);color:var(--ink);margin:0 0 8px;overflow-wrap:anywhere}
.wallet-dialog-footnote{font:400 11px/1.5 var(--body);color:var(--muted);margin:19px 0 0}
.activity-proof{font:400 11px/1.4 var(--mono);color:var(--accent);white-space:nowrap;margin-left:8px}
@media(max-width:1100px){.header-actions{gap:15px}.brand-line{display:none}.header-wallet{padding-inline:11px}}
@media(max-width:800px){.header-actions{gap:13px}.header-actions .network-badge,.header-actions .demo-badge{display:none}.header-wallet{font-size:10px;min-height:36px}.wallet-status{min-height:0}.wallet-panel{padding-bottom:0}.wallet-panel .trade-button{margin-top:9px}.live-reward-notice{margin-top:10px}}
@media(max-width:520px){.site-header{gap:12px;min-height:75px}.header-actions{gap:12px}.header-actions #how-open{display:none}.header-actions #collection-open{font-size:9px}.header-wallet{max-width:122px;font-size:10px;padding:10px}.wallet-dialog{padding:25px 20px}.wallet-dialog h2{font-size:36px}.wallet-choice{min-height:52px}.mode-switch button{font-size:11px;min-height:32px}.wallet-mini-actions .text-button{min-height:40px}}
.wallet-trade-count{font:400 10px/1.5 var(--body);color:var(--muted);margin:6px 0 0}
.live-claim-dialog .claim-method.is-unavailable{opacity:.58}.live-claim-dialog .claim-method.is-unavailable:hover{border-color:#322d39;background:#141218}.claim-proof{display:inline-block;color:var(--ink);font-size:12px;text-decoration:underline;text-underline-offset:4px}.live-pass-badge{color:#c0acdd}.pass-card[data-live="true"]{border-left:2px solid #76559d;padding-left:14px}.live-collection-note{font-size:12px;line-height:1.6;color:var(--muted);margin:0 0 18px}.live-claim-dialog .claim-notice.claim-privacy{font-size:11px}.live-claim-dialog [aria-busy="true"]{cursor:progress}

/* Documentation access keeps the showroom header compact at small widths. */
.header-doc-link{text-decoration:none;white-space:nowrap}.footer-docs{display:flex;gap:20px;font:400 9px/1.4 var(--mono);white-space:nowrap}.footer-docs a{color:var(--muted);text-decoration:none}.footer-docs a:hover{color:var(--ink)}
@media(max-width:1100px){.brand-line{display:none}.header-actions{gap:18px}.header-doc-link{font-size:10px}}
@media(max-width:700px){.header-doc-link{display:none}.footer-docs{gap:16px;flex-wrap:wrap}.site-footer{flex-wrap:wrap;gap:12px}.footer-docs a{min-height:28px;display:flex;align-items:center}}

/* Official links share the existing PERK type and line treatment. */
.launch-links{display:flex;align-items:center;flex-wrap:wrap;gap:6px 16px;min-width:0;font:400 10px/1.5 var(--mono)}
.launch-ca,.launch-x{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:36px;padding:7px 10px;border:1px solid var(--line);background:transparent;color:var(--ink);font:inherit;text-decoration:none;white-space:nowrap}
.launch-ca:disabled{cursor:default;color:var(--muted)}.launch-ca:not(:disabled):hover,.launch-x:hover{color:var(--accent);border-color:var(--accent)}.launch-copy-status{color:var(--muted);font-size:10px;max-width:30ch}.launch-copy-status:empty{display:none}.launch-copy-fallback{flex:1 1 260px;min-width:0;max-width:100%;padding:9px;border:1px solid var(--accent);background:var(--surface);color:var(--ink);font:400 11px/1.5 var(--mono)}
.site-header{flex-wrap:wrap;row-gap:0;padding-bottom:10px}.site-header>.launch-links{flex-basis:100%;justify-content:flex-end;margin-top:-6px}.site-footer>.launch-links{margin-left:auto;justify-content:flex-end}
@media(max-width:1100px){.site-header>.launch-links{margin-top:0}.site-footer>.launch-links{margin-left:0}}
@media(max-width:700px){.site-header>.launch-links{justify-content:flex-start;padding-top:3px}.site-header{padding-block:8px 10px}.site-footer>.launch-links{flex-basis:100%;justify-content:flex-start}.launch-links{gap:6px 12px}.launch-ca,.launch-x{min-height:36px}}
.launch-service-badge{display:inline-flex;align-items:center;gap:7px;min-height:36px;color:var(--accent);font:400 9px/1.4 var(--mono);white-space:nowrap}.launch-service-badge::before{content:'';display:block;width:4px;height:4px;background:var(--accent)}

/* Wallet actions stay readable and reachable inside mobile wallet webviews. */
.wallet-app-link{text-decoration:none}
.wallet-choice:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
.wallet-list>.wallet-missing{margin:6px 0 0;color:var(--muted);font-size:12px}
.wallet-dialog{overscroll-behavior:contain}
@media(max-width:520px){.wallet-dialog{max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding-bottom:max(25px,env(safe-area-inset-bottom))}.wallet-choice{min-height:58px;touch-action:manipulation}.wallet-dialog .dialog-close{width:44px;height:44px}.wallet-dialog-footnote{font-size:12px}}
