:root{--ink:#1c3c5e;--ink-deep:#15304b;--ink-900:#0f2236;--ink-50:#eef2f7;--gold:#1c3c5e;--gold-soft:#3a5b7e;--gold-deep:#15304b;--gold-line:#1c3c5e38;--gold-faint:#1c3c5e12;--paper:#f4f6f8;--paper-deep:#eaeef2;--surface:#fff;--surface-2:#f7f9fb;--hairline:#e2e6ea;--hairline-soft:#edf0f3;--text:#1b2733;--text-muted:#5d6b78;--text-faint:#97a2ad;--text-invert:#f3f6fa;--success:#2f7d5b;--success-bg:#e7f4ec;--warning:#9a6b1f;--warning-bg:#f6edd8;--error:#c0392b;--error-bg:#fae8e6;--font-serif:"Hanken Grotesk", "Noto Sans SC", system-ui, -apple-system, "PingFang SC", sans-serif;--font-sans:"Hanken Grotesk", "Noto Sans SC", system-ui, -apple-system, "PingFang SC", sans-serif;--font-mono:ui-monospace, "Cascadia Code", "JetBrains Mono", "SFMono-Regular", Menlo, Consolas, monospace;--step--1:.82rem;--step-0:1rem;--step-1:1.25rem;--step-2:1.563rem;--step-3:1.953rem;--step-4:2.441rem;--measure:64ch;--r-xs:2px;--r-sm:5px;--r-md:8px;--r-lg:12px;--r-pill:999px;--sh-sm:0 1px 1px #1c3c5e0a, 0 2px 4px #1c3c5e0a;--sh-md:0 1px 2px #1c3c5e0a, 0 8px 22px -10px #1c3c5e29;--sh-lg:0 2px 4px #1c3c5e0d, 0 24px 50px -24px #1b273338}*{box-sizing:border-box;margin:0;padding:0}html{overflow-x:clip}body{font-family:var(--font-sans);background-color:var(--paper);color:var(--text);min-height:100vh;font-size:var(--step-0);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-feature-settings:"kern" 1, "liga" 1}:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:2px}.input:focus-visible{outline:none}.nav-item{cursor:pointer;font-family:var(--font-sans);color:var(--text-muted);letter-spacing:.01em;background:0 0;border:none;padding:6px 0;font-size:.9rem;transition:color .2s}.nav-item:hover{color:var(--ink)}h1,h2,h3{font-family:var(--font-sans);color:var(--text);letter-spacing:-.011em;text-wrap:balance;font-weight:600;line-height:1.2}h1{font-size:var(--step-4);letter-spacing:-.02em;font-weight:650}h2{font-size:var(--step-2)}h3{font-size:var(--step-1)}p{color:var(--text-muted);max-width:var(--measure);line-height:1.68}.serif-italic{font-family:var(--font-serif);font-style:italic;font-weight:460}a{color:var(--ink);text-underline-offset:3px}.eyebrow{font-family:var(--font-sans);font-size:var(--step--1);letter-spacing:.13em;text-transform:uppercase;color:var(--ink);font-weight:600;display:inline-block}.label{letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);font-size:.7rem;font-weight:600}.foil{color:var(--text-invert)}.rule{color:var(--gold);align-items:center;gap:16px;margin:10px 0;display:flex}.rule:before,.rule:after{content:"";flex:1;height:1px}.rule:before{background:linear-gradient(90deg, transparent, var(--hairline) 40%, var(--gold-line))}.rule:after{background:linear-gradient(270deg, transparent, var(--hairline) 40%, var(--gold-line))}.rule .diamond{background:var(--gold);width:4px;height:4px;box-shadow:0 0 0 3px var(--gold-faint);transform:rotate(45deg)}#root{z-index:1;position:relative}.container{max-width:1080px;margin:0 auto;padding:0 24px}.stack{flex-direction:column;display:flex}.row{align-items:center;display:flex}.center{justify-content:center;align-items:center;display:flex}.spread{justify-content:space-between;align-items:center;display:flex}.topbar{-webkit-backdrop-filter:saturate(115%)blur(8px);backdrop-filter:saturate(115%)blur(8px);z-index:20;background:#f4f6f8d9;position:sticky;top:0}.topbar:after{content:"";background:linear-gradient(90deg, transparent, var(--hairline) 12%, var(--hairline) 88%, transparent);height:1px;position:absolute;bottom:0;left:0;right:0}.topbar-inner{justify-content:space-between;align-items:center;height:66px;display:flex}.wordmark{align-items:center;gap:10px;text-decoration:none;display:flex}.brand-logo{width:auto;height:40px;display:block}@media (width<=480px){.brand-logo{height:34px}}.card{background:var(--surface);border:1px solid var(--hairline-soft);border-radius:var(--r-lg);box-shadow:var(--sh-md);padding:36px;position:relative}.card:before{content:"";border-radius:var(--r-lg) var(--r-lg) 0 0;pointer-events:none;background:linear-gradient(#ffffff80,#0000);height:40%;position:absolute;top:0;left:1px;right:1px}.card-quiet{background:var(--surface-2);border:1px solid var(--hairline-soft);border-radius:var(--r-md);box-shadow:none;position:relative}.card-engraved{position:relative}.card-engraved:after{content:"";border:1px solid var(--gold-line);border-radius:calc(var(--r-lg) - 9px);pointer-events:none;position:absolute;inset:14px}.btn{font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;border-radius:var(--r-sm);cursor:pointer;border:1px solid #0000;justify-content:center;align-items:center;gap:9px;padding:13px 26px;font-size:.8rem;font-weight:600;transition:background .25s,color .25s,border-color .25s,box-shadow .25s,transform 60ms;display:inline-flex}.btn-primary{background:var(--ink);color:var(--text-invert);box-shadow:var(--sh-sm), inset 0 1px 0 #ffffff14}.btn-primary:hover{background:var(--ink-deep);box-shadow:var(--sh-md), inset 0 1px 0 #ffffff1a}.btn-ghost{color:var(--ink);border-color:var(--gold-line);background:0 0}.btn-ghost:hover{border-color:var(--gold);color:var(--gold-deep);background:var(--gold-faint)}.btn-quiet{color:var(--text-muted);letter-spacing:.04em;text-transform:none;background:0 0;border:none;padding:8px 12px;font-weight:500}.btn-quiet:hover{color:var(--ink)}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.4;cursor:not-allowed;box-shadow:none}.btn-block{width:100%}.link{cursor:pointer;font-family:var(--font-sans);color:var(--text-muted);border:none;border-bottom:1px solid var(--gold-line);background:0 0;padding:0 0 1px;font-size:.9rem;transition:color .2s,border-color .2s}.link:hover{color:var(--gold-deep);border-color:var(--gold)}.field{flex-direction:column;gap:8px;display:flex}.field>.label{margin-left:1px}.field-control{display:flex;position:relative}.field-affix{align-items:center;display:flex;position:absolute;top:50%;right:5px;transform:translateY(-50%)}.icon-btn{cursor:pointer;color:var(--text-faint);border-radius:var(--r-xs);background:0 0;border:none;align-items:center;padding:7px;transition:color .2s;display:inline-flex}.icon-btn:hover{color:var(--ink)}.input{border:1px solid var(--hairline);border-radius:var(--r-sm);color:var(--text);width:100%;font-family:var(--font-sans);background:#fffefb;outline:none;padding:13px 15px;font-size:.98rem;transition:border-color .2s,box-shadow .2s,background .2s;box-shadow:inset 0 1px 2px #1c3c5e0a}.input::placeholder{color:var(--text-faint)}.input:focus{border-color:var(--gold);box-shadow:inset 0 1px 2px #1c3c5e08, 0 0 0 3px var(--gold-faint);background:#fff}.form-msg{font-size:.85rem}.form-msg.error{color:var(--error)}.badge{border-radius:var(--r-sm);letter-spacing:.06em;border:1px solid #0000;align-items:center;gap:6px;padding:3px 10px;font-size:.7rem;font-weight:600;display:inline-flex}.badge.available{background:var(--success-bg);color:var(--success);border-color:#4a6b522e}.badge.assigned,.badge.redeemed{background:var(--ink-50);color:var(--ink);border-color:#1c3c5e1f}.badge.pending{background:var(--warning-bg);color:var(--warning);border-color:#9a723333}.badge.neutral{background:var(--paper-deep);color:var(--text-muted);border-color:var(--hairline)}.metric-grid{background:var(--surface);border:1px solid var(--hairline-soft);border-radius:var(--r-lg);box-shadow:var(--sh-sm);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:0;display:grid;overflow:hidden}.metric{border:none;border-left:1px solid var(--hairline-soft);background:0 0;border-radius:0;padding:24px 26px}.metric:first-child{border-left:none}.metric .num{font-family:var(--font-serif);font-size:var(--step-3);color:var(--ink);font-variant-numeric:tabular-nums;font-feature-settings:"tnum";letter-spacing:-.01em;margin-top:10px;font-weight:500;line-height:1}.metric.alert{background:var(--warning-bg)}.metric.alert .num{color:var(--warning)}@media (width<=680px){.metric{border-left:none;border-top:1px solid var(--hairline-soft)}.metric:first-child{border-top:none}}.tabs{border-bottom:1px solid var(--hairline);gap:6px;margin:32px 0 22px;display:flex}.tab{cursor:pointer;font-family:var(--font-sans);letter-spacing:.02em;color:var(--text-muted);background:0 0;border:none;border-bottom:1.5px solid #0000;margin-bottom:-1px;padding:12px 14px;font-size:.86rem;font-weight:500;transition:color .2s,border-color .2s}.tab:hover{color:var(--ink)}.tab.active{color:var(--ink);border-bottom-color:var(--gold);font-weight:600}.table-wrap{border:1px solid var(--hairline-soft);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--sh-sm);overflow-x:auto}table.data{border-collapse:collapse;width:100%;font-size:.9rem}table.data th{text-align:left;letter-spacing:.12em;text-transform:uppercase;color:var(--text-faint);background:var(--surface-2);border-bottom:1px solid var(--hairline);white-space:nowrap;padding:13px 16px;font-size:.68rem;font-weight:600}table.data td{border-bottom:1px solid var(--hairline-soft);color:var(--text);vertical-align:middle;padding:14px 16px}table.data tr:last-child td{border-bottom:none}table.data tbody tr{transition:background .15s}table.data tr:hover td{background:var(--surface-2)}.mono{font-variant-numeric:tabular-nums;font-feature-settings:"tnum";letter-spacing:.02em}.muted{color:var(--text-muted)}.spin{border:2px solid var(--gold-line);border-top-color:var(--gold);border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}[data-reveal]{opacity:0}@media (prefers-reduced-motion:reduce){[data-reveal]{opacity:1}}.sheen{pointer-events:none;filter:blur(2px);background:linear-gradient(90deg,#0000,#ffffff1a,#fff3,#ffffff1a,#0000);width:45%;height:140%;position:absolute;top:-20%;left:0;transform:skew(-18deg)}.btn-primary{position:relative;overflow:hidden}.btn-primary:after{content:"";background:linear-gradient(90deg,#0000,#ffffff24,#0000);width:50%;height:100%;transition:left .7s;position:absolute;top:0;left:-120%;transform:skew(-20deg)}.btn-primary:hover:after{left:130%}.lift{transition:transform .5s cubic-bezier(.2,.7,.2,1),box-shadow .5s}.lift:hover{box-shadow:var(--sh-lg);transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.lift:hover{transform:none}}.lp-hero{text-align:center;max-width:720px;margin:0 auto;padding:clamp(44px,8vh,88px) 0 clamp(44px,7vh,72px)}.lp-eyebrow{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink);font-size:.72rem;font-weight:600}.lp-title{letter-spacing:-.025em;max-width:15ch;margin:20px auto 0;font-size:clamp(2.2rem,5.6vw,3.5rem);line-height:1.08}.lp-title-2{display:block}.lp-sub{max-width:46ch;margin:20px auto 0;font-size:1.05rem}.lp-card{width:100%;max-width:360px;margin:44px auto 0}.lp-stats{border-top:1px solid var(--hairline);border-bottom:1px solid var(--hairline);max-width:540px;font-family:var(--font-mono);letter-spacing:.03em;color:var(--text-muted);flex-wrap:wrap;justify-content:center;align-items:center;gap:18px;margin:34px auto 0;padding:14px 0;font-size:.8rem;display:flex}.lp-stats b{color:var(--ink);font-weight:600}.lp-stats-dot{background:var(--gold-line);border-radius:50%;width:3px;height:3px}.lp-cta{flex-wrap:wrap;justify-content:center;gap:14px;margin-top:32px;display:flex}.lp-flow{border-top:1px solid var(--hairline-soft);padding:clamp(40px,7vh,60px) 0 clamp(52px,8vh,76px)}.lp-legs{grid-template-columns:repeat(3,1fr);gap:clamp(24px,4vw,44px);margin:24px 0 0;padding:0;list-style:none;display:grid}.lp-leg{border-top:1px solid var(--hairline);padding-top:22px;position:relative}.lp-leg:before{content:"";background:var(--ink);width:7px;height:7px;box-shadow:0 0 0 3px var(--paper);position:absolute;top:-4px;left:0;transform:rotate(45deg)}.lp-leg-code{font-family:var(--font-mono);letter-spacing:.18em;color:var(--text-faint);font-size:.72rem;font-weight:600}.lp-leg-title{margin-top:12px;font-size:1.15rem}.lp-leg-text{margin-top:8px;font-size:.92rem}.lp-footer{border-top:1px solid var(--hairline);margin-top:8px;padding:26px 0 42px}.lp-footer .container{font-family:var(--font-mono);letter-spacing:.12em;color:var(--text-faint);flex-wrap:wrap;justify-content:space-between;gap:12px;font-size:.72rem;display:flex}@media (width<=680px){.lp-legs{grid-template-columns:1fr;gap:0}.lp-leg{padding:20px 0 0}.lp-leg:not(:first-child){margin-top:20px}}@media (width<=640px){:root{--step-4:2.1rem;--step-3:1.7rem}.card{padding:28px 22px}}.qr-btn{cursor:pointer;-webkit-tap-highlight-color:transparent;background:0 0;border:none;border-radius:6px;flex-shrink:0;padding:0;display:inline-flex;position:relative}.qr-btn:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.qr-expand{background:var(--ink);width:22px;height:22px;color:var(--text-invert);box-shadow:var(--sh-sm);border:1px solid #ffffff40;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;bottom:-6px;right:-6px}.qr-overlay{z-index:100;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0f2236b8;justify-content:center;align-items:center;padding:24px;animation:.2s qr-fade;display:flex;position:fixed;inset:0}@keyframes qr-fade{0%{opacity:0}to{opacity:1}}.qr-modal{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--sh-lg);width:380px;max-width:92vw;padding:26px;position:relative}.qr-modal-frame{border:1px solid var(--hairline);border-radius:var(--r-md);background:#fff;justify-content:center;align-items:center;padding:16px;display:flex}.qr-modal-frame img{width:min(74vw,316px);height:min(74vw,316px);image-rendering:pixelated;display:block}.qr-close{background:var(--surface-2);width:34px;height:34px;color:var(--text-muted);cursor:pointer;border:none;border-radius:50%;justify-content:center;align-items:center;transition:background .2s,color .2s;display:flex;position:absolute;top:10px;right:10px}.qr-close:hover{background:var(--paper-deep);color:var(--ink)}html{-webkit-text-size-adjust:100%}.preview-row{flex-wrap:wrap;gap:20px;display:flex}@media (width<=900px){.preview-row{-webkit-overflow-scrolling:touch;scroll-snap-type:x proximity;flex-wrap:nowrap;padding-bottom:8px;overflow-x:auto}.preview-row>*{scroll-snap-align:start;flex-shrink:0}}@media (width<=560px){.tabs{scrollbar-width:none;-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.tabs::-webkit-scrollbar{display:none}.tab{white-space:nowrap;flex-shrink:0}}@media (width<=480px){.container{padding:0 16px}.input{font-size:16px}.topbar-inner{height:58px}.wordmark .name{font-size:1.02rem}.btn-primary,.btn-ghost{padding:12px 20px}}
