@import"https://fonts.googleapis.com/css2?family=Geist:wght@400;500;600;700;800&family=Geist+Mono:wght@500;600;700&display=swap";:root{--color-paper: oklch(94% .022 78);--color-paper-2: oklch(97% .016 78);--color-paper-3: oklch(90% .026 74);--color-ink: oklch(18% .012 60);--color-ink-2: oklch(32% .012 60);--color-neutral: oklch(40% .014 62);--color-muted: oklch(46% .014 65);--color-rule: oklch(67% .018 70);--color-rule-2: oklch(80% .018 74);--color-accent: oklch(62% .18 37);--color-accent-dark: oklch(46% .16 35);--color-accent-ink: oklch(18% .012 60);--color-focus: oklch(50% .21 35);--color-overlay: oklch(18% .012 60 / .08);--color-grid: oklch(18% .012 60 / .045);--font-display: "Geist", "Avenir Next", sans-serif;--font-body: "Geist", "Avenir Next", sans-serif;--font-mono: "Geist Mono", "SFMono-Regular", monospace;--space-3xs: .125rem;--space-2xs: .25rem;--space-xs: .5rem;--space-sm: .75rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2.5rem;--space-2xl: 4rem;--space-3xl: 6rem;--space-4xl: 9rem;--text-xs: .64rem;--text-sm: .8rem;--text-base: 1rem;--text-md: 1.25rem;--text-lg: 1.5625rem;--text-xl: 1.9531rem;--text-2xl: 2.4414rem;--text-3xl: 3.0518rem;--text-4xl: 3.8147rem;--text-display: clamp(2.75rem, 6vw + .5rem, 5.25rem);--ease-out: cubic-bezier(.16, 1, .3, 1);--ease-in: cubic-bezier(.7, 0, .84, 0);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--dur-micro: .12s;--dur-short: .2s;--dur-long: .42s;--radius-none: 0;--radius-sm: .25rem;--rule-thin: 1px;--rule-medium: 2px;--rule-heavy: 3px;--shadow-ticket: .7rem .7rem 0 var(--color-ink);--shadow-ticket-small: .45rem .45rem 0 var(--color-ink);--z-base: 1;--z-raised: 10;--z-sticky: 200;--z-toast: 500}html,body{overflow-x:clip}:root{color:var(--color-ink);background:var(--color-paper);font-family:var(--font-body);font-synthesis:none;text-rendering:optimizeLegibility}*{box-sizing:border-box}body{margin:0;min-width:0;min-height:100dvh;background-color:var(--color-paper);background-image:linear-gradient(var(--color-grid) var(--rule-thin),transparent var(--rule-thin)),linear-gradient(90deg,var(--color-grid) var(--rule-thin),transparent var(--rule-thin));background-size:1.5rem 1.5rem}body:before{position:fixed;inset:0;z-index:var(--z-base);pointer-events:none;content:"";opacity:.17;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.78' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.15'/%3E%3C/svg%3E")}button,input{font:inherit}button,a{color:inherit}button,a,input{-webkit-tap-highlight-color:transparent}button:focus-visible,input:focus-visible,a:focus-visible{outline:var(--rule-heavy) solid var(--color-focus);outline-offset:var(--space-2xs)}main{position:relative;z-index:var(--z-raised);min-height:100dvh;display:flex;flex-direction:column}.nav{min-height:4.5rem;display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding:var(--space-sm) clamp(var(--space-md),4vw,var(--space-2xl));border-bottom:var(--rule-medium) solid var(--color-ink);background:var(--color-paper);color:var(--color-ink)}.wordmark{min-height:2.75rem;border:0;padding:0;background:transparent;font-family:var(--font-mono);font-size:var(--text-md);font-weight:700;letter-spacing:-.07em;cursor:pointer;white-space:nowrap}.wordmark span{color:var(--color-accent-dark)}.nav-actions{min-width:0;display:flex;align-items:center;justify-content:flex-end;gap:var(--space-md)}.network-dot{display:inline-flex;align-items:center;gap:var(--space-xs);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.network-dot:before{width:var(--space-xs);height:var(--space-xs);border:var(--rule-thin) solid var(--color-ink);background:var(--color-accent);content:""}.wallet-button,.text-button{min-height:2.75rem;border:0;background:transparent;padding:var(--space-xs) 0;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:700;text-decoration-line:underline;text-decoration-color:var(--color-accent-dark);text-decoration-thickness:var(--rule-medium);text-underline-offset:var(--space-2xs);cursor:pointer;white-space:nowrap;transition:color var(--dur-short) var(--ease-out),transform var(--dur-micro) var(--ease-out)}.wallet-button:active,.text-button:active,.wordmark:active{transform:translateY(var(--rule-thin))}.setup-banner{background:var(--color-ink);color:var(--color-paper-2);padding:var(--space-sm) clamp(var(--space-md),4vw,var(--space-2xl));text-align:center;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;line-height:1.5;letter-spacing:.06em}.landing,.receipt-layout{width:min(76rem,calc(100% - 2rem));flex:1;margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;gap:var(--space-2xl);padding-block:var(--space-2xl) var(--space-3xl)}.hero,.receipt-intro{min-width:0;display:grid;align-content:start;gap:var(--space-lg);animation:claim-reveal var(--dur-long) var(--ease-out) both}.context-line{display:flex;align-items:center;gap:var(--space-sm);margin:0;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;line-height:1.4;letter-spacing:.09em;text-transform:uppercase}.context-line:before{width:1.75rem;height:var(--rule-medium);flex:0 0 auto;background:var(--color-accent);content:""}.hero h1,.receipt-intro h1,.loading-state h1{min-width:0;max-width:18ch;margin:0;overflow-wrap:anywhere;font-family:var(--font-display);font-size:var(--text-display);font-style:normal;font-weight:800;line-height:.96;letter-spacing:-.055em}.hero h1 span{position:relative;color:var(--color-ink);white-space:nowrap}.hero h1 span:after{position:absolute;inset-inline:0;bottom:.03em;height:var(--rule-medium);background:var(--color-accent);content:"";transform:rotate(-1deg);transform-origin:left}.hero-copy,.receipt-intro>p:not(.context-line){max-width:62ch;margin:0;color:var(--color-ink-2);font-size:clamp(var(--text-base),1.5vw,var(--text-md));line-height:1.55}.proof-strip{display:grid;grid-template-columns:minmax(0,1fr);border-top:var(--rule-medium) solid var(--color-ink);border-bottom:var(--rule-thin) solid var(--color-rule)}.proof-strip span{min-width:0;padding-block:var(--space-sm);border-bottom:var(--rule-thin) solid var(--color-rule-2);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;line-height:1.45}.proof-strip span:last-child{border-bottom:0}.ticket{position:relative;min-width:0;background:var(--color-paper-2);color:var(--color-ink);border:var(--rule-medium) solid var(--color-ink);box-shadow:var(--shadow-ticket-small);animation:claim-reveal var(--dur-long) var(--ease-out) 60ms both}.ticket:before,.ticket:after{position:absolute;z-index:var(--z-raised);inset-inline-start:-.65rem;width:1.05rem;height:1.05rem;border-radius:50%;background:var(--color-paper);border-inline-end:var(--rule-medium) solid var(--color-ink);content:""}.ticket:before{top:29%}.ticket:after{bottom:29%}.create-ticket,.receipt-ticket{padding:var(--space-lg)}.ticket-head{display:flex;justify-content:space-between;gap:var(--space-sm);padding-bottom:var(--space-md);margin-bottom:var(--space-lg);border-bottom:var(--rule-medium) dashed var(--color-ink);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;line-height:1.25;letter-spacing:.08em;text-transform:uppercase}.ticket-head strong{color:var(--color-accent-dark);white-space:nowrap}.field{display:grid;gap:var(--space-xs);margin-bottom:var(--space-lg)}.field-label{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;letter-spacing:.07em;text-transform:uppercase}.field-help{min-height:1lh;color:var(--color-neutral);font-size:var(--text-sm);line-height:1.4}input{width:100%;min-width:0;min-height:3rem;border:var(--rule-thin) solid var(--color-rule);border-radius:var(--radius-none);outline:var(--rule-medium) solid transparent;outline-offset:var(--rule-thin);background:var(--color-paper-2);color:var(--color-ink);padding:var(--space-sm) var(--space-xl) var(--space-sm) var(--space-sm);font-size:var(--text-base);font-weight:500;transition:background-color var(--dur-short) var(--ease-out),border-color var(--dur-short) var(--ease-out)}input::placeholder{color:var(--color-muted)}input:focus-visible{border-color:var(--color-ink-2);outline:var(--rule-medium) solid var(--color-focus);outline-offset:var(--rule-thin)}input:invalid:not(:placeholder-shown){border-style:dashed;border-color:var(--color-accent-dark)}input:disabled{cursor:not-allowed;opacity:.55}input[type=datetime-local]{font-family:var(--font-mono);font-size:var(--text-sm);font-variant-numeric:tabular-nums}.mono,.tnum{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.mono{font-size:var(--text-sm)}.form-pair{display:grid;grid-template-columns:minmax(0,1fr);gap:0}.input-unit{position:relative;display:block}.input-unit input{padding-inline-end:4rem}.input-unit b{position:absolute;inset-inline-end:var(--space-sm);bottom:1.08rem;font-family:var(--font-mono);font-size:var(--text-xs);line-height:1}.trust-note,.role-note{margin:0 0 var(--space-lg);padding:var(--space-md);border:var(--rule-thin) dashed var(--color-rule);background:var(--color-paper);color:var(--color-ink-2);font-size:var(--text-sm);line-height:1.5}.primary,.secondary,.danger{min-height:3rem;border:var(--rule-medium) solid var(--color-ink);border-radius:var(--radius-none);padding:var(--space-sm) var(--space-lg);font-family:var(--font-mono);font-size:var(--text-sm);font-weight:700;line-height:1.2;letter-spacing:.035em;cursor:pointer;white-space:nowrap;transition:background-color var(--dur-short) var(--ease-out),color var(--dur-short) var(--ease-out),transform var(--dur-micro) var(--ease-out),box-shadow var(--dur-micro) var(--ease-out)}.primary{width:100%;background:var(--color-accent);color:var(--color-accent-ink);box-shadow:var(--space-2xs) var(--space-2xs) 0 var(--color-ink)}.secondary{background:var(--color-paper-2);color:var(--color-ink)}.danger{background:var(--color-ink);color:var(--color-paper-2)}.primary:focus-visible{outline-color:var(--color-ink)}.danger:focus-visible{outline-color:var(--color-paper-2);box-shadow:0 0 0 var(--space-2xs) var(--color-ink)}.primary:active,.secondary:active,.danger:active{transform:translateY(var(--rule-thin));box-shadow:none}button:disabled{cursor:not-allowed;opacity:.5;box-shadow:none}.button-label{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-xs)}.button-label[data-loading=true]:before{width:var(--space-sm);height:var(--space-sm);border:var(--rule-medium) solid currentColor;border-inline-end-color:transparent;border-radius:50%;content:"";animation:loading-turn .8s linear infinite}.ticket-code{margin:var(--space-lg) calc(var(--space-lg) * -1) calc(var(--space-lg) * -1);padding:var(--space-sm) var(--space-md);background:var(--color-ink);color:var(--color-paper-2);text-align:center;font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;line-height:1.4;letter-spacing:.07em;text-transform:uppercase}.receipt-intro{align-self:start}.receipt-intro h1{max-width:12ch;font-size:clamp(var(--text-2xl),5vw,var(--text-4xl));line-height:.98}.receipt-intro .text-button{justify-self:start}.receipt-ticket h2{min-width:0;margin:var(--space-xl) 0 var(--space-lg);overflow-wrap:anywhere;font-family:var(--font-display);font-size:clamp(var(--text-xl),4vw,var(--text-3xl));font-style:normal;font-weight:800;line-height:1;letter-spacing:-.045em}.status-stamp{display:inline-flex;max-width:100%;transform:rotate(-1.5deg);border:var(--rule-heavy) solid currentColor;padding:var(--space-xs) var(--space-sm);color:var(--color-accent-dark);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;line-height:1;letter-spacing:.08em;text-transform:uppercase}.status-1,.status-2,.status-3,.status-4{color:var(--color-ink-2)}.amount-row{display:grid;gap:var(--space-xs);padding-block:var(--space-md);border-top:var(--rule-medium) solid var(--color-ink);border-bottom:var(--rule-medium) solid var(--color-ink);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;line-height:1.3;letter-spacing:.06em}.amount-row strong{color:var(--color-accent-dark);font-size:var(--text-md);letter-spacing:-.04em;font-variant-numeric:tabular-nums}.receipt-grid{display:grid;grid-template-columns:minmax(0,1fr);border-bottom:var(--rule-medium) dashed var(--color-ink)}.receipt-grid>div{min-width:0;padding-block:var(--space-md);border-bottom:var(--rule-thin) solid var(--color-rule-2)}.receipt-grid small{display:block;margin-bottom:var(--space-xs);color:var(--color-neutral);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;letter-spacing:.07em}.receipt-grid a,.receipt-grid b{display:block;overflow:hidden;text-overflow:ellipsis;font-family:var(--font-mono);font-size:var(--text-sm);font-weight:600;white-space:nowrap}.overdue{color:var(--color-accent-dark);text-decoration:underline;text-decoration-style:wavy;text-decoration-thickness:var(--rule-thin);text-underline-offset:var(--space-2xs)}.action-panel{display:grid;gap:var(--space-sm);padding-block:var(--space-lg)}.action-context{margin:0;color:var(--color-neutral);font-family:var(--font-mono);font-size:var(--text-xs);line-height:1.45}.timeline{border-top:var(--rule-medium) solid var(--color-ink);padding-top:var(--space-md)}.timeline h3{margin:0 0 var(--space-xs);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;letter-spacing:.08em}.timeline a{min-height:2.75rem;display:flex;align-items:center;justify-content:space-between;gap:var(--space-md);padding-block:var(--space-xs);border-bottom:var(--rule-thin) dotted var(--color-rule);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;line-height:1.3;text-decoration:none}.timeline a span,.timeline a b{white-space:nowrap}.timeline a:active,footer a:active,.toast button:active{transform:translateY(var(--rule-thin))}.loading-state{width:min(46rem,calc(100% - 2rem));min-height:34rem;flex:1;margin-inline:auto;display:grid;place-content:center;justify-items:start;gap:var(--space-lg);padding-block:var(--space-3xl)}.loading-state h1{max-width:18ch;font-size:clamp(var(--text-xl),7vw,var(--text-3xl));line-height:1.04}.loading-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm)}.receipt-skeleton{width:min(32rem,100%);border:var(--rule-medium) solid var(--color-ink);padding:var(--space-lg);background:var(--color-paper-2);box-shadow:var(--shadow-ticket-small)}.skeleton-line{height:.85rem;margin-block:var(--space-md);background:var(--color-rule-2);transform-origin:left}.skeleton-line:nth-child(1){width:38%}.skeleton-line:nth-child(2){width:74%;height:2.5rem}.skeleton-line:nth-child(3){width:58%}.toast{position:fixed;z-index:var(--z-toast);inset-inline-end:var(--space-lg);bottom:var(--space-lg);width:min(24rem,calc(100% - 3rem));background:var(--color-ink);color:var(--color-paper-2);border:var(--rule-medium) solid var(--color-paper-2);box-shadow:var(--shadow-ticket-small);padding:var(--space-md) calc(var(--space-xl) + var(--space-xs)) var(--space-md) var(--space-md);animation:toast-enter var(--dur-long) var(--ease-out) both}.toast-error{border-style:dashed;border-color:var(--color-accent)}.toast span{font-family:var(--font-mono);font-size:var(--text-xs);font-weight:700;letter-spacing:.08em}.toast p{margin:var(--space-xs) 0 0;font-size:var(--text-sm);line-height:1.5}.toast button{position:absolute;inset-inline-end:var(--space-xs);top:var(--space-xs);min-width:2.75rem;min-height:2.75rem;border:0;background:transparent;color:var(--color-paper-2);font-family:var(--font-mono);font-size:var(--text-base);cursor:pointer}.toast button:focus-visible{outline-color:var(--color-paper-2)}footer{display:flex;flex-direction:column;gap:var(--space-xs);padding:var(--space-lg) clamp(var(--space-md),4vw,var(--space-2xl));border-top:var(--rule-medium) solid var(--color-ink);color:var(--color-neutral);font-family:var(--font-mono);font-size:var(--text-xs);font-weight:600;line-height:1.45;letter-spacing:.05em}footer p{margin:0}footer a{min-height:2.75rem;display:inline-flex;align-items:center;color:var(--color-ink);white-space:nowrap;text-underline-offset:var(--space-2xs)}@keyframes claim-reveal{0%{opacity:0;transform:translateY(var(--space-xs))}to{opacity:1;transform:translateY(0)}}@keyframes toast-enter{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}@keyframes loading-turn{to{transform:rotate(1turn)}}@media(hover:hover)and (pointer:fine){.wallet-button:hover,.text-button:hover{color:var(--color-accent-dark)}input:hover{background:var(--color-paper)}.primary:hover:not(:disabled),.secondary:hover:not(:disabled),.danger:hover:not(:disabled){transform:translateY(calc(var(--rule-thin) * -1))}.timeline a:hover span{color:var(--color-accent-dark)}}@media(min-width:40rem){.proof-strip{grid-template-columns:repeat(3,minmax(0,1fr))}.proof-strip span{padding-inline:var(--space-sm);border-inline-end:var(--rule-thin) solid var(--color-rule-2);border-bottom:0}.proof-strip span:first-child{padding-inline-start:0}.proof-strip span:last-child{border-inline-end:0}.form-pair{grid-template-columns:minmax(7rem,.65fr) minmax(0,1.35fr);gap:var(--space-md)}.receipt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.receipt-grid>div:nth-child(odd){padding-inline-end:var(--space-md);border-inline-end:var(--rule-thin) solid var(--color-rule-2)}.receipt-grid>div:nth-child(2n){padding-inline-start:var(--space-md)}.amount-row{grid-template-columns:1fr auto;align-items:baseline}footer{flex-direction:row;align-items:center;justify-content:space-between}}@media(min-width:60rem){.landing{grid-template-columns:minmax(0,7fr) minmax(22rem,5fr);gap:clamp(var(--space-2xl),7vw,var(--space-4xl));padding-block:var(--space-3xl) var(--space-4xl)}.receipt-layout{grid-template-columns:minmax(16rem,4fr) minmax(28rem,7fr);align-items:start;gap:clamp(var(--space-2xl),7vw,var(--space-4xl));padding-block:var(--space-3xl) var(--space-4xl)}.receipt-intro{position:sticky;top:var(--space-xl)}.ticket{box-shadow:var(--shadow-ticket)}.create-ticket,.receipt-ticket{padding:var(--space-xl)}.ticket-code{margin:var(--space-xl) calc(var(--space-xl) * -1) calc(var(--space-xl) * -1)}}@media(max-width:31rem){.network-dot{display:none}.wallet-button{max-width:8.25rem;overflow:hidden;text-overflow:ellipsis}.primary,.secondary,.danger{width:100%;padding-inline:var(--space-sm);font-size:var(--text-xs)}}@media(pointer:coarse){.primary,.secondary,.danger,.wallet-button,.text-button,footer a{min-height:3rem}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.15s!important;animation-iteration-count:1!important;transition-duration:.15s!important}.hero,.receipt-intro,.ticket,.toast{transform:none}}
