:root{font-family:var(--jw-font-sans,"Geist Variable",Inter,system-ui,sans-serif);color:#fff;background:#050606}*{box-sizing:border-box}html,body,#screen{width:100%;height:100%;margin:0}body{color:#fff;background:#050606}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:4px solid #ff996f;outline-offset:6px}
.stage{position:relative;isolation:isolate;width:100%;height:100%;min-height:650px;overflow:hidden;background:#101915;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,23vw);grid-template-rows:auto minmax(0,1fr) auto auto;gap:2.5vh 3vw;padding:3vh 4vw 2vh}.slides,.shade{position:absolute;inset:0;z-index:-1}.slide{position:absolute;inset:-2%;width:104%;height:104%;object-fit:cover;opacity:0;transform:scale(1.03);transition:opacity 1.8s ease,transform 10s linear;filter:saturate(1.04)}.slide.active{opacity:1;transform:scale(1.1)}.shade{background:linear-gradient(90deg,#000d,#0007 65%,#0004),linear-gradient(0deg,#000c,transparent 70%)}
.stage>header{grid-column:1/-1;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:3vw;min-width:0}.brand{display:flex;align-items:center;gap:12px}.brand b,.brand small,.merchant strong,.merchant small{display:block}.brand [data-logo]{width:clamp(32px,2.3vw,88px);height:clamp(32px,2.3vw,88px)}.brand b{font-size:clamp(14px,1.05vw,40px);font-weight:850}.brand small,.merchant small{color:#ffffffbf;font-size:clamp(12px,.85vw,33px);margin-top:4px}.merchant{text-align:center;max-width:36vw;min-width:0}.merchant strong{font-family:var(--jw-font-display,"Syne Variable");font-size:clamp(19px,1.3vw,50px);overflow-wrap:anywhere}header time{justify-self:end;font-size:clamp(18px,1.4vw,54px);font-weight:750;font-variant-numeric:tabular-nums}
.screen-actions{grid-column:1;grid-row:2;align-self:center;min-width:0;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:2vh 2vw;align-items:center}.qr-intro{min-width:0}.eyebrow,.identity>p{text-transform:uppercase;letter-spacing:.2em;font-size:clamp(11px,.8vw,31px);font-weight:800;color:#ff996f;margin:0 0 2vh}.qr-intro h2{font-family:var(--jw-font-display,"Syne Variable");font-size:clamp(40px,4.6vw,177px);font-weight:650;letter-spacing:-.055em;line-height:1.02;margin:0 0 2.5vh}.qr-invitation{max-width:21em;color:#d5dfd8;font-size:clamp(16px,1.25vw,48px);line-height:1.5;margin:0}.qr-cards{grid-column:2;grid-row:1/3;min-width:0}.screen-qr{display:flex;flex-direction:column;align-items:center;padding:clamp(14px,1.3vw,50px);border-radius:clamp(20px,1.4vw,54px);background:#fff;color:#101713;text-align:center;text-decoration:none;box-shadow:0 16px 70px #0003;min-width:0}.screen-qr>span{font-weight:850;font-size:clamp(25px,2.3vw,88px);letter-spacing:-.04em;margin-bottom:1vh}.screen-qr img{display:block;width:100%;height:auto;aspect-ratio:1}.screen-qr img[hidden]{display:none}.screen-qr small{font-size:clamp(14px,1.1vw,42px);margin-top:1vh;color:#465149}.stage[data-view=idle] .screen-qr:not(.is-current){display:none}.stage[data-view=idle][data-rotation=running] .screen-qr.is-current{animation:qr-arrive .6s ease-out}.qr-controls{grid-column:1;display:flex;flex-direction:column;align-items:flex-start;gap:16px}.qr-choices{display:flex;gap:clamp(8px,1vw,38px);flex-wrap:wrap}.qr-choices button{border:0;border-top:2px solid #ffffff4d;padding:12px 0 0;color:#c4cec7;background:none;cursor:pointer;font-weight:750;font-size:clamp(14px,1.05vw,40px)}.qr-choices button span{display:block;font-size:.65em;letter-spacing:.1em;margin-bottom:7px;color:#b9c4bd}.qr-choices button[aria-pressed=true]{border-color:#ff996f;color:#fff}.qr-pause{background:none;border:1px solid #ffffff45;border-radius:30px;color:#d5dfd8;padding:8px 14px;cursor:pointer;font-size:clamp(12px,.7vw,27px)}
.live-feed{grid-column:1;grid-row:2;min-height:0;min-width:0;display:flex;flex-direction:column;gap:1.6vh}.stage[data-view=idle] .live-feed{display:none}.feed-heading,.feed-heading>div{display:flex;align-items:center;gap:12px}.feed-heading{justify-content:space-between;gap:16px}.feed-heading h2{font-size:clamp(24px,2vw,77px);letter-spacing:-.035em;margin:0}.live-dot{width:clamp(8px,.6vw,23px);height:clamp(8px,.6vw,23px);flex-shrink:0;border-radius:50%;background:#90e8b9}.feed-intro{color:#c6d2cb;font-size:clamp(12px,.85vw,33px)}.feed-footnote{font-size:clamp(11px,.75vw,29px);color:#b7c4bc;margin:0}.feed-connection{font-size:inherit;color:#a3f2c6;letter-spacing:.04em}.feed-connection.offline{color:#ffce96}#activity-items{flex:1;min-height:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:minmax(0,1fr);gap:1.5vh 1vw}.activity-card{display:flex;flex-direction:column;justify-content:center;gap:1.3vh;position:relative;overflow:hidden;padding:clamp(18px,1.7vw,65px);border:1px solid #ffffff30;background:#0c1813eb;border-radius:clamp(20px,1.3vw,50px);line-height:1.2;animation:arrive .35s ease-out}.activity-icon{width:clamp(35px,2.4vw,92px);height:clamp(35px,2.4vw,92px);display:grid;place-items:center;border-radius:25%;background:#ff694125;color:#ff996f;font-size:clamp(23px,1.8vw,69px)}.justpay .activity-icon{background:#83e5b321;color:#9ef3c7}.tip .activity-icon{background:#b8a0ff24;color:#d8caff}.activity-label{display:flex;justify-content:space-between;gap:10px;font-size:clamp(13px,1vw,38px);color:#bac8bf}.activity-label>span{color:#e5efe8}.activity-card h3{font-size:clamp(30px,2.7vw,104px);letter-spacing:-.035em;margin:.25em 0;overflow-wrap:anywhere}.activity-card p{margin:0;font-size:clamp(19px,1.5vw,58px);color:#e1e9e4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere;line-height:1.3}.activity-card>div{min-width:0}.justpay h3,.tip h3{font-size:clamp(28px,2.25vw,86px)}.justpay p,.tip p{font-size:clamp(30px,2.8vw,108px);font-weight:800;color:#fff;letter-spacing:-.03em}.event-lifetime{position:absolute;bottom:0;left:0;width:100%;height:3px;background:#a9eac354;transform-origin:left;animation:expire var(--remaining) linear forwards}.stage[data-activity-count="1"] #activity-items{grid-template-columns:1fr}.stage[data-activity-count="1"] .activity-card h3{font-size:clamp(44px,5vw,192px)}.stage[data-activity-count="1"] .activity-card p{font-size:clamp(24px,2.5vw,96px)}
.stage[data-view=active] .screen-actions{grid-column:2;align-self:center;display:block}.stage[data-view=active] .qr-intro,.stage[data-view=active] .qr-controls{display:none}.stage[data-view=active] .qr-cards{display:grid;gap:1.5vh}.stage[data-view=active] .screen-qr{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 1vw;padding:clamp(12px,.8vw,31px);border-radius:clamp(16px,1vw,38px);animation:none}.stage[data-view=active] .screen-qr img{grid-column:1;grid-row:1/3}.stage[data-view=active] .screen-qr>span{font-size:clamp(22px,1.6vw,61px);align-self:end;grid-column:2}.stage[data-view=active] .screen-qr small{font-size:clamp(12px,.85vw,33px);align-self:start;grid-column:2;margin:0}
.nostr-note{grid-column:2;grid-row:2;align-self:center;min-width:0;padding:clamp(18px,1.3vw,50px);border:1px solid #ffffff29;border-radius:clamp(20px,1vw,38px);background:#080d0cbb;backdrop-filter:blur(18px)}.note-head{display:flex;align-items:center;gap:10px}.note-head>span{width:clamp(30px,2vw,77px);height:clamp(30px,2vw,77px);display:grid;place-items:center;border-radius:50%;background:#7a40ff}.note-head strong,.note-head small{display:block}.note-head strong{font-size:clamp(14px,1vw,38px)}.note-head small,.npub{color:#c4cbc7;font-size:clamp(11px,.7vw,27px)}.nostr-note>p{margin:1.4vh 0;font-size:clamp(16px,1.25vw,48px);line-height:1.45;display:-webkit-box;-webkit-line-clamp:5;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:anywhere}.stage[data-view=active] .nostr-note{grid-row:3;padding:0;border:0;background:none;backdrop-filter:none}.stage[data-view=active] .nostr-note .note-head>span,.stage[data-view=active] .nostr-note .note-head small,.stage[data-view=active] .nostr-note .npub{display:none}.stage[data-view=active] .nostr-note>p{font-size:clamp(12px,.8vw,31px);-webkit-line-clamp:1;margin:7px 0 0}
.identity{grid-column:1;grid-row:3;min-width:0}.identity>p{margin:0}.identity h1{font-family:var(--jw-font-display,"Syne Variable");font-size:clamp(40px,5vw,192px);font-weight:620;line-height:1.05;letter-spacing:-.055em;margin:1vh 0 1.5vh;text-shadow:0 8px 40px #0006;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.stage[data-view=active] .identity h1{font-size:clamp(30px,2.4vw,92px);margin:.6vh 0 1vh}.stage[data-view=active] .identity>p{display:none}.progress{display:flex;gap:7px;width:min(480px,38vw)}.progress i{height:3px;flex:1;background:#ffffff4d}.progress i.active{background:#fff}.stage>footer{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;gap:15px;color:#c5cbc7;font-size:clamp(10px,.65vw,25px);text-transform:uppercase;letter-spacing:.1em}.screen-loading,.screen-error{height:100%;display:grid;place-content:center;text-align:center;background:radial-gradient(circle at 50% 40%,#232826,#050606 60%)}.loading-mark,.screen-error>span{font-size:70px}.screen-error h1{max-width:800px;font-size:clamp(36px,6vw,90px);margin:18px}.screen-error p,.screen-error small,.screen-loading p{color:#b7c4bc}
@keyframes arrive{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes qr-arrive{from{opacity:.65;transform:translateY(5px)}to{opacity:1;transform:none}}@keyframes expire{to{transform:scaleX(0)}}
@media(max-width:1100px),(max-height:760px){.stage{height:auto;min-height:100%;display:flex;flex-direction:column;gap:28px;padding:25px 24px;overflow:hidden}.stage>header{grid-template-columns:1fr auto;gap:16px}.merchant{grid-column:1/-1;grid-row:2;justify-self:start;text-align:left;max-width:100%}.brand small{display:none}.screen-actions{width:100%;gap:24px}.qr-intro h2{font-size:clamp(40px,5.5vw,64px)}.qr-cards{width:100%;max-width:390px;justify-self:end}.screen-qr>span{font-size:30px}.qr-controls{gap:16px}.qr-choices button{font-size:16px}.nostr-note{width:100%;max-width:600px;align-self:flex-end}.identity h1{font-size:clamp(40px,8vw,75px)}.stage>footer{font-size:9px;line-height:1.5;flex-wrap:wrap}.stage[data-view=active] .live-feed{order:1;min-height:0}.stage[data-view=active] .screen-actions{order:2;width:100%}.stage[data-view=active] .nostr-note{order:3;width:100%;align-self:flex-start}.stage[data-view=active] .identity{order:4}.stage>footer{order:5}.stage[data-view=active] .qr-cards{max-width:none;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.stage[data-view=active] .screen-qr{display:flex;padding:12px;gap:6px}.stage[data-view=active] .screen-qr img{order:1;width:min(100%,160px)}.stage[data-view=active] .screen-qr>span{align-self:center;order:0;margin:0}.stage[data-view=active] .screen-qr small{align-self:center;order:2}#activity-items{gap:14px;grid-auto-rows:auto}.activity-card{padding:22px;min-height:220px}.activity-card h3{font-size:36px}.activity-card p{font-size:22px}.justpay p,.tip p{font-size:36px}.feed-footnote{margin-top:10px}}
@media(max-width:600px){.stage{padding:24px 20px;gap:24px}.screen-actions{display:flex;flex-direction:column;align-items:stretch;gap:20px}.qr-intro h2{font-size:42px;margin:0 0 14px}.qr-intro h2 br{display:none}.eyebrow{margin-bottom:12px}.qr-invitation{font-size:16px}.qr-cards{max-width:340px;align-self:center}.screen-qr{padding:20px}.qr-controls{align-items:stretch}.qr-choices{justify-content:space-between}.qr-pause{align-self:flex-start}.nostr-note{padding:20px}.identity h1{font-size:42px}.stage>footer{flex-direction:column;align-items:flex-start;gap:8px}#activity-items{grid-template-columns:1fr}.activity-card{min-height:190px;padding:24px}.feed-heading{align-items:flex-start}.feed-heading h2{font-size:26px}.feed-intro{display:none}.stage[data-view=active] .qr-cards{gap:8px}.stage[data-view=active] .screen-qr{padding:8px;border-radius:12px}.stage[data-view=active] .screen-qr>span{font-size:18px}.stage[data-view=active] .screen-qr small{font-size:10px}.stage[data-activity-count="1"] .activity-card h3{font-size:44px}.stage[data-activity-count="1"] .activity-card p{font-size:24px}}
@media(prefers-reduced-motion:reduce){.slide,.slide.active{transition:none;transform:none}.activity-card,.event-lifetime,.stage[data-view=idle] .screen-qr.is-current{animation:none}.stage[data-view=idle] .screen-actions{display:flex;flex-direction:column;align-items:stretch;gap:3vh}.stage[data-view=idle] .qr-intro h2{font-size:clamp(36px,3vw,115px);margin-bottom:1vh}.stage[data-view=idle] .qr-intro h2 br{display:none}.stage[data-view=idle] .qr-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1vw;max-width:none}.stage[data-view=idle] .screen-qr{display:flex;padding:clamp(12px,1vw,38px)}.stage[data-view=idle] .screen-qr>span{font-size:clamp(22px,1.8vw,69px)}.stage[data-view=idle] .qr-controls{display:none}}
.brand .jw-app-icon{width:100%;height:100%}
.activity-announcement{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
@media(prefers-reduced-motion:reduce){.stage[data-view=idle] .screen-qr:not(.is-current){display:flex}}
@media(prefers-reduced-motion:reduce) and (max-width:600px){.stage[data-view=idle] .qr-cards{grid-template-columns:1fr;gap:16px;max-width:300px}.stage[data-view=idle] .screen-qr{padding:22px}.stage[data-view=idle] .screen-qr>span{font-size:30px}}
