:root{--canvas: #f6f2ec;--paper: #ffffff;--ink: #17140f;--ink-2: #3d372e;--muted: #89837a;--line: #e4ddd2;--line-strong: #d6cdbf;--gold: #d5a24d;--gold-deep: #a67612;--gold-pale: #fff2cf;--accent-soft: rgba(213, 162, 77, .18);--accent-line: rgba(213, 162, 77, .24);--font-sans: system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;--font-display: var(--font-sans);--font-latin: var(--font-sans);--ease: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1);--shadow-ticket: 0 34px 80px -40px rgba(23, 20, 15, .4), 0 2px 6px rgba(23, 20, 15, .04)}.theme-forest{--gold: #6f8f72;--gold-deep: #3f5f45;--gold-pale: #e7efe4;--accent-soft: rgba(111, 143, 114, .17);--accent-line: rgba(111, 143, 114, .26)}.theme-indigo{--gold: #5b6f9e;--gold-deep: #35486f;--gold-pale: #e7ebf5;--accent-soft: rgba(91, 111, 158, .16);--accent-line: rgba(91, 111, 158, .25)}.theme-clay{--gold: #b46a4f;--gold-deep: #84452f;--gold-pale: #f7e6dc;--accent-soft: rgba(180, 106, 79, .16);--accent-line: rgba(180, 106, 79, .25)}*{box-sizing:border-box}html,body,#app{height:100%}html{background:var(--canvas);-webkit-text-size-adjust:100%}body{margin:0;min-width:320px;background:var(--canvas);color:var(--ink);font-family:var(--font-sans);font-size:15px;line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input{font-family:inherit}a{color:inherit}img{max-width:100%}::selection{background:var(--gold-pale);color:var(--ink)}.page{position:relative;display:flex;min-height:100vh;min-height:100dvh;flex-direction:column;overflow:hidden;background:radial-gradient(920px 540px at 8% -12%,var(--accent-soft),transparent 62%),radial-gradient(760px 480px at 102% 4%,rgba(255,255,255,.82),transparent 64%),var(--canvas)}.page--resolve{position:fixed;top:0;right:0;bottom:0;left:0;height:100%;height:100dvh;min-height:0;padding-top:env(safe-area-inset-top);overscroll-behavior:none}.page-grain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;opacity:.05;pointer-events:none;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.86' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E")}.watermark{position:fixed;top:17vh;right:2.2vw;z-index:0;color:#17140f09;font-size:clamp(120px,13vw,186px);letter-spacing:.16em;line-height:.9;writing-mode:vertical-rl;-webkit-user-select:none;user-select:none;pointer-events:none}.site-head,.site-foot{position:relative;z-index:2;display:flex;width:100%;max-width:1240px;margin:0 auto;align-items:center;flex:none}.site-head{padding:24px 48px 0;justify-content:space-between;gap:20px}.brand{display:inline-flex;min-width:0;align-items:center;gap:14px;text-decoration:none}.brand-name{font-size:25px;font-weight:400;letter-spacing:.06em}.brand-logo{display:block;width:auto;height:30px}.brand-rule{width:1px;height:17px;background:var(--line-strong)}.brand-word{color:var(--muted);font-size:11px;letter-spacing:.3em;white-space:nowrap}.head-note{display:inline-flex;min-width:0;align-items:center;gap:8px;color:#7f776a;font-size:11px}.head-dot{width:5px;height:5px;flex:none;border-radius:50%;background:var(--gold)}.site-foot{padding:14px 48px calc(16px + env(safe-area-inset-bottom));gap:12px;border-top:1px solid rgba(228,221,210,.8);color:#a8a094;font-size:10px;letter-spacing:.08em}.site-foot a{text-decoration:none}.site-foot a:hover{color:var(--ink)}.page--resolve .site-foot{justify-content:center}.foot-sep{width:2px;height:2px;border-radius:50%;background:#c3baab}.foot-right{margin-left:auto;color:#8f8779;letter-spacing:.2em}.stage{position:relative;z-index:1;display:flex;width:100%;min-height:0;margin:0 auto;padding:24px;flex:1;justify-content:center;align-items:center}.ticket-zone{width:100%;max-width:452px;height:100%;max-height:680px;min-height:0}.ticket{display:flex;height:100%;min-height:0;flex-direction:column;overflow:hidden;border:1px solid rgba(228,221,210,.95);border-radius:18px;background:var(--paper);box-shadow:var(--shadow-ticket)}.ticket-head{position:relative;display:flex;min-height:54px;padding:16px 24px;align-items:flex-end;flex:none;overflow:hidden;background:var(--ink);color:#f7f1e6}.ticket-head.has-banner{height:clamp(64px,14dvh,120px)}.ticket-banner{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:58% 54%;filter:saturate(.82) contrast(1.04)}.ticket-head.has-banner:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;background:linear-gradient(180deg,#17140f14,#17140fd9)}.ticket-head-inner{position:relative;z-index:2;min-width:0}.ticket-name{margin:0;color:#f3ece1;font-size:14px;font-weight:500;line-height:1.5;overflow-wrap:anywhere}.ticket-body{display:flex;min-height:0;padding:24px 28px;flex:1}.state{display:flex;width:100%;min-height:0;flex:1;flex-direction:column;gap:12px}.state-loading{display:flex;min-height:0;flex:1;flex-direction:column;align-items:center;justify-content:center;text-align:center}.loading-seal{width:46px;height:46px;color:var(--gold)}.loading-seal svg{width:100%;height:100%;animation:spin 1.8s linear infinite}.state-kicker{margin:18px 0 0;font-size:12.5px;font-weight:500}.loading-lines{display:flex;margin-top:20px;gap:5px}.loading-lines span{width:26px;height:2px;background:var(--line);animation:blink 1.4s var(--ease) infinite}.loading-lines span:first-child{background:var(--gold)}.loading-lines span:nth-child(2){animation-delay:.16s}.loading-lines span:nth-child(3){animation-delay:.32s}.state--success{text-align:center}.success-head{flex:none}.success-title{display:-webkit-box;margin:0;overflow:hidden;font-size:20px;font-weight:600;line-height:1.5;overflow-wrap:anywhere;-webkit-box-orient:vertical;-webkit-line-clamp:2}.success-desc{display:-webkit-box;max-width:340px;margin:6px auto 0;overflow:hidden;color:var(--muted);font-size:12px;line-height:1.7;-webkit-box-orient:vertical;-webkit-line-clamp:2}.qr-shell{display:flex;min-height:0;flex:1;align-items:center;justify-content:center;container-type:inline-size}.qr-frame{height:100%;max-height:min(280px,100cqw);max-width:100%;padding:10px;aspect-ratio:1;border:1px solid #ded5c8;border-radius:12px;background:#fff;box-shadow:0 14px 30px -24px #17140f80}.qr-frame img{display:block;width:100%;height:100%;object-fit:contain}.success-actions{display:flex;padding-top:10px;align-items:center;justify-content:center;flex:none;border-top:1px solid #efe9df}.btn{cursor:pointer;transition:color .2s var(--ease),background .2s var(--ease),border-color .2s var(--ease)}.btn--quiet{padding:4px 8px;border:0;background:none;color:var(--ink-2);font-size:12px}.btn--quiet:hover{color:var(--gold-deep)}.btn--solid{min-width:128px;padding:11px 24px;border:0;border-radius:8px;background:var(--ink);color:#f8f3e9;font-size:12.5px}.btn--solid:hover{background:#2c261e}.state--error{align-items:center;justify-content:center;text-align:center}.error-mark{width:54px;height:54px;flex:none;color:var(--gold-deep)}.error-mark svg{width:100%;height:100%}.error-mark--wifi,.error-mark--search{color:var(--muted)}.error-title{margin:0;font-size:22px;font-weight:400;line-height:1.4;overflow-wrap:anywhere}.error-desc{max-width:292px;margin:0;color:var(--muted);font-size:12px;line-height:1.8}.error-actions{display:flex;justify-content:center;flex:none}.contact{display:flex;width:100%;margin-top:6px;padding:12px 14px;align-items:center;justify-content:space-between;gap:12px;border:1px solid var(--line);border-radius:10px;background:#faf7f1;text-align:left}.contact-copy{min-width:0}.contact-label{display:block;color:#7f776a;font-size:9px;line-height:1.4}.contact-text{margin:5px 0 0;color:var(--ink-2);font-size:11.5px;line-height:1.5;overflow-wrap:anywhere}.copy-btn{flex:none;padding:5px 10px;cursor:pointer;border:1px solid var(--line-strong);border-radius:6px;background:transparent;color:var(--ink-2);font-size:10.5px}.copy-btn:hover{border-color:var(--gold);color:var(--gold-deep)}.eyebrow{display:inline-flex;margin:0;align-items:center;gap:12px;color:var(--gold-deep);font-size:10.5px;letter-spacing:.26em;line-height:1}.eyebrow:before{content:"";width:26px;height:1px;background:var(--gold)}.index-main{position:relative;z-index:1;width:100%;max-width:1120px;margin:0 auto;padding:72px 48px 80px;flex:1}.index-title{margin:22px 0 16px;font-size:clamp(38px,4.4vw,56px);font-weight:400;letter-spacing:.02em;line-height:1.2}.index-lede{max-width:640px;margin:0;color:#6c6457;font-size:13.5px;line-height:1.95}.demo-grid{display:grid;margin-top:44px;border-bottom:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr))}.demo-card{display:grid;padding:20px 16px;align-items:center;gap:16px;border-top:1px solid var(--line);color:inherit;grid-template-columns:26px minmax(0,1fr) auto 16px;text-decoration:none;transition:background .25s var(--ease)}.demo-card:hover{background:#ffffffad}.demo-card:hover .demo-arrow{transform:translate(3px);color:var(--gold-deep)}.demo-num{color:var(--gold-deep);font-size:10px;letter-spacing:.08em}.demo-copy h2{margin:0;font-size:14px;font-weight:500;line-height:1.5}.demo-copy p{margin:4px 0 0;color:var(--muted);font-size:11px;line-height:1.65}.demo-tag{padding:2px 6px;border:1px solid var(--line);border-radius:3px;color:#a29a8d;font-size:8.5px;letter-spacing:.08em;line-height:1.6;white-space:nowrap}.demo-arrow{width:15px;height:15px;color:#bdb3a4;transition:transform .25s var(--ease),color .25s var(--ease)}.index-footnote{margin:26px 0 0;color:#a29a8d;font-size:10.5px;line-height:1.8}.index-footnote code{padding:1px 4px;border-radius:3px;background:#ffffffb3;color:#7d7466;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:9.5px}.toast{position:fixed;bottom:calc(24px + env(safe-area-inset-bottom));left:50%;z-index:30;max-width:calc(100vw - 40px);padding:9px 18px;transform:translate(-50%);border-radius:7px;background:var(--ink);box-shadow:0 12px 30px -14px #17140f80;color:#f8f3e9;font-size:11.5px;text-align:center}.toast-enter-active,.toast-leave-active{transition:opacity .25s var(--ease),transform .25s var(--ease)}.toast-enter-from,.toast-leave-to{opacity:0;transform:translate(-50%,8px)}button:focus-visible,a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}@keyframes spin{to{transform:rotate(360deg)}}@keyframes blink{0%,to{opacity:.35}50%{opacity:1}}@media(max-width:1500px){.watermark{display:none}}@media(max-width:940px){.site-head,.site-foot{padding-right:32px;padding-left:32px}.index-main{padding:56px 32px 64px}}@media(max-width:640px){.site-head{padding:16px 20px 0}.brand{gap:10px}.brand-logo{height:26px}.brand-rule{height:14px}.brand-word{font-size:10px}.head-note{gap:6px;font-size:9.5px}.stage{padding:16px}.ticket{border-radius:15px}.ticket-head{padding:12px 20px}.ticket-body{padding:18px}.success-title{font-size:18px}.success-desc{font-size:11.5px}.error-title{font-size:20px}.site-foot{padding:10px 20px calc(12px + env(safe-area-inset-bottom));gap:9px;font-size:9px}.foot-right{letter-spacing:.12em}.index-main{padding:38px 20px 52px}.index-title{margin:16px 0 12px;font-size:34px}.index-lede{font-size:12px}.demo-grid{margin-top:30px;grid-template-columns:minmax(0,1fr)}.demo-card{padding:15px 8px;gap:12px;grid-template-columns:22px minmax(0,1fr) 15px}.demo-tag{display:none}}@media(max-height:600px){.page--resolve .site-head{padding-top:10px}.page--resolve .brand-logo{height:22px}.page--resolve .brand-name{font-size:20px}.page--resolve .site-foot{padding-top:6px;padding-bottom:calc(6px + env(safe-area-inset-bottom))}.stage{padding:10px 16px}.ticket-head,.ticket-head.has-banner{height:44px;min-height:44px;padding:8px 16px}.ticket-body{padding:12px 16px}.state{gap:8px}.success-title{font-size:16px}.success-desc{display:none}.success-actions{padding-top:4px}.error-mark{width:36px;height:36px}.error-title{font-size:18px}.error-desc{line-height:1.5}.contact{margin-top:0;padding:6px 10px}.btn--solid{padding:8px 20px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.page--resolve{isolation:isolate}.ambient{position:absolute;top:0;right:0;bottom:0;left:0;z-index:0;overflow:hidden;pointer-events:none;-webkit-user-select:none;user-select:none}.ambient-glow{position:absolute;width:min(100vw,780px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,var(--accent-line),transparent 67%)}.ambient-glow--one{top:-24%;left:-28%;animation:ambient-drift 12s var(--ease-in-out) infinite alternate}.ambient-glow--two{right:-26%;bottom:-28%;background:radial-gradient(circle,var(--accent-soft),transparent 65%);animation:ambient-drift 12s -6s var(--ease-in-out) infinite alternate-reverse}.ambient-orbit{position:absolute;top:50%;left:50%;width:min(145vw,840px);aspect-ratio:1;border:1px solid var(--accent-line);border-radius:50%;opacity:.55;transform:translate(-50%,-50%) rotate(-20deg) scaleY(.78);animation:ambient-orbit 24s linear infinite}.ambient-orbit:before,.ambient-orbit:after{content:"";position:absolute;top:10%;right:10%;bottom:10%;left:10%;border:1px dashed var(--accent-line);border-radius:inherit}.ambient-orbit:after{top:-10%;right:-10%;bottom:-10%;left:-10%;border-style:solid;opacity:.45}.ambient-particles i{position:absolute;top:24%;left:12%;width:4px;height:4px;border-radius:50%;background:var(--gold);box-shadow:0 0 14px 3px var(--accent-soft);animation:particle-drift 7s var(--ease-in-out) infinite alternate}.ambient-particles i:nth-child(2){top:64%;left:8%;width:3px;height:3px;animation-delay:-2s}.ambient-particles i:nth-child(3){top:78%;left:23%;animation-delay:-4s}.ambient-particles i:nth-child(4){top:18%;left:86%;animation-delay:-1s}.ambient-particles i:nth-child(5){top:52%;left:93%;width:3px;height:3px;animation-delay:-5s}.ambient-particles i:nth-child(6){top:83%;left:81%;animation-delay:-3s}.page--resolve .site-head,.page--resolve .ticket-zone,.page--resolve .site-foot,.page--resolve .state>*{opacity:1;transform:none;transition:opacity .28s var(--ease),transform .28s var(--ease)}.page--resolve .ticket-zone{transition-delay:50ms}.page--resolve .site-foot{transition-delay:.1s}.page--resolve .state>:nth-child(2){transition-delay:40ms}.page--resolve .state>:nth-child(3){transition-delay:80ms}.page--resolve .state>:nth-child(n+4){transition-delay:.12s}@starting-style{.page--resolve .site-head,.page--resolve .site-foot{opacity:0;transform:translateY(8px)}.page--resolve .ticket-zone{opacity:0;transform:perspective(1200px) translateY(18px) rotateX(4deg) scale(.97)}.page--resolve .state>*{opacity:0;transform:translateY(8px)}}.page--resolve .ticket-head:after{content:"";position:absolute;top:-40%;right:-30%;bottom:-40%;left:-30%;z-index:1;pointer-events:none;background:linear-gradient(110deg,transparent 35%,rgba(255,255,255,.24) 49%,transparent 63%);transform:translate(-100%);animation:banner-glint 1.2s .15s var(--ease) both}.page--resolve .head-dot{position:relative}.page--resolve .head-dot:after{content:"";position:absolute;top:-4px;right:-4px;bottom:-4px;left:-4px;border:1px solid var(--gold);border-radius:50%;animation:signal-ring 2.4s var(--ease) 3}.qr-frame{position:relative;isolation:isolate}.qr-orbit{position:absolute;top:-6px;right:-6px;bottom:-6px;left:-6px;overflow:hidden;padding:1.5px;border-radius:17px;pointer-events:none;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude}.qr-orbit:before{content:"";display:none;position:absolute;top:-50%;right:-50%;bottom:-50%;left:-50%;background:conic-gradient(from 0deg,transparent 8%,var(--accent-soft) 30%,var(--gold) 40%,transparent 48%,transparent 58%,var(--accent-soft) 80%,var(--gold) 90%,transparent 98%);animation:spin 6s linear infinite}@supports (mask-composite: exclude) or (-webkit-mask-composite: xor){.qr-orbit:before{display:block}}.qr-tracks{position:absolute;top:12px;right:-1px;bottom:12px;left:-1px;overflow:hidden;pointer-events:none}.qr-tracks i{position:absolute;top:-28%;left:0;width:2px;height:28%;border-radius:2px;background:linear-gradient(transparent,var(--gold),transparent);animation:qr-track 2.4s linear 3}.qr-tracks i+i{right:0;left:auto;animation-direction:reverse}.page--resolve .btn,.page--resolve .copy-btn{transition:transform .16s var(--ease),color .16s ease,background .16s ease,border-color .16s ease}.page--resolve .btn:active:not(:focus-visible),.page--resolve .copy-btn:active:not(:focus-visible){transform:scale(.97)}.page--resolve .btn--quiet,.page--resolve .btn--solid{position:relative;overflow:hidden}.page--resolve .btn--quiet:after,.page--resolve .btn--solid:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;background:linear-gradient(110deg,transparent 20%,var(--accent-soft),transparent 80%);transform:translate(-110%);transition:transform .28s var(--ease)}.page--resolve .toast-enter-active{transition-duration:.24s}.page--resolve .toast-leave-active{transition-duration:.16s}.page--resolve .toast-enter-from,.page--resolve .toast-leave-to{transform:translate(-50%,35%) scale(.97)}@media(hover:hover)and (pointer:fine){.page--resolve .btn:hover:after{transform:translate(110%)}.page--resolve .copy-btn:hover{transform:translateY(-1px)}}.page--resolve.motion-instant .state>*,.page--resolve.motion-instant .toast,.page--resolve.motion-instant .btn,.page--resolve.motion-instant .copy-btn{transition:none}.page--resolve.motion-instant .qr-tracks i{animation:none}@keyframes ambient-drift{0%{transform:translate(0) scale(.95)}to{transform:translate(16%,12%) scale(1.12)}}@keyframes ambient-orbit{0%{transform:translate(-50%,-50%) rotate(-20deg) scaleY(.78)}to{transform:translate(-50%,-50%) rotate(340deg) scaleY(.78)}}@keyframes particle-drift{0%{opacity:.15;transform:translateY(12px)}to{opacity:.65;transform:translateY(-18px)}}@keyframes banner-glint{to{transform:translate(100%)}}@keyframes signal-ring{0%{opacity:.6;transform:scale(.95)}to{opacity:0;transform:scale(1.8)}}@keyframes qr-track{to{transform:translateY(460%)}}@media(prefers-reduced-motion:reduce){.ambient-glow,.ambient-orbit,.ambient-particles i,.qr-orbit:before,.qr-tracks i,.page--resolve .ticket-head:after,.page--resolve .head-dot:after{animation:none!important}.qr-tracks,.page--resolve .ticket-head:after,.page--resolve .head-dot:after{display:none}.page--resolve .site-head,.page--resolve .ticket-zone,.page--resolve .site-foot,.page--resolve .state>*{transform:none!important;transition-property:opacity!important;transition-duration:.18s!important;transition-delay:0ms!important}.page--resolve .btn,.page--resolve .copy-btn,.page--resolve .btn:after{transform:none!important}.page--resolve .btn:after{display:none}.page--resolve .toast{transform:translate(-50%);transition-property:opacity!important;transition-duration:.18s!important}.page--resolve.motion-instant .state>*,.page--resolve.motion-instant .toast{transition:none!important}}
