body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,Manrope,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,Manrope,monospace}.App{text-align:center}.App-logo{height:40vmin;pointer-events:none}@media (prefers-reduced-motion:no-preference){.App-logo{animation:App-logo-spin 20s linear infinite}}.App-header{align-items:center;background-color:#282c34;color:#fff;display:flex;flex-direction:column;font-size:calc(10px + 2vmin);justify-content:center;min-height:100vh}.App-link{color:#61dafb}@keyframes App-logo-spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}::-webkit-scrollbar{width:.4em}::-webkit-scrollbar-track{-webkit-box-shadow:inset 0 0 6px #0000}::-webkit-scrollbar-thumb{background-color:#0000001a;outline:1px solid #708090}.qrcode-page{--bg:#eef1f4;--surface:#fff;--ink:#1a2433;--muted:#5b6779;--line:#cbd3dd;--accent:#2a4bd7;--p1:#2a4bd7;--p1-soft:#e3e8fc;--p2:#0e7c66;--p2-soft:#ddf2ec;box-sizing:border-box;color-scheme:light;padding-bottom:env(safe-area-inset-bottom,0);padding-top:env(safe-area-inset-top,0)}@media (prefers-color-scheme:dark){.qrcode-page:not([data-theme=light]){--bg:#12171f;--surface:#1b232e;--ink:#e6ebf2;--muted:#94a0b2;--line:#2e3a4a;--accent:#8098ff;--p1:#8098ff;--p1-soft:#233059;--p2:#4fcdb0;--p2-soft:#173d36;color-scheme:dark}}.qrcode-page[data-theme=dark]{--bg:#12171f;--surface:#1b232e;--ink:#e6ebf2;--muted:#94a0b2;--line:#2e3a4a;--accent:#8098ff;--p1:#8098ff;--p1-soft:#233059;--p2:#4fcdb0;--p2-soft:#173d36;color-scheme:dark}.qrcode-page,.qrcode-page *,.qrcode-page :after,.qrcode-page :before{box-sizing:border-box}.qrcode-page{background:var(--bg);color:var(--ink);font-family:Noto Sans TC,PingFang TC,Microsoft JhengHei,system-ui,sans-serif;font-size:16px;line-height:1.6;margin:0;scroll-padding-top:env(safe-area-inset-top,0)}.qrcode-page main{margin:0 auto;max-width:960px;padding:3rem 1.25rem 4rem}.qrcode-page h1{font-size:clamp(1.6rem,3.5vw,2.1rem);font-weight:700;letter-spacing:.01em;margin:0 0 1.75rem}.qr-layout{grid-gap:2rem;align-items:start;display:grid;gap:2rem;grid-template-columns:minmax(0,1fr) 300px}@media (max-width:760px){.qr-layout{grid-template-columns:1fr}}.qr-fields{grid-gap:1.25rem;display:grid;gap:1.25rem;margin-bottom:2rem}.qr-field label{align-items:center;display:flex;font-weight:500;gap:.5rem;margin-bottom:.4rem}.qr-field label .qr-key{color:var(--muted);font-family:JetBrains Mono,ui-monospace,Menlo,monospace;font-size:.8rem;font-weight:400}.qr-swatch{border-radius:2px;flex:none;height:.7rem;width:.7rem}.qr-select-wrap{position:relative}.qr-select-wrap:after{border-bottom:2px solid var(--muted);border-right:2px solid var(--muted);content:"";height:.5rem;pointer-events:none;position:absolute;right:1rem;top:50%;transform:translateY(-70%) rotate(45deg);width:.5rem}.qrcode-page select{-webkit-appearance:none;appearance:none;background:var(--surface);border:1px solid var(--line);border-left-width:4px;border-radius:6px;color:var(--ink);cursor:pointer;font:inherit;padding:.7rem 2.5rem .7rem .9rem;width:100%}.qrcode-page select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.qr-url-box{background:var(--surface);border:1px solid var(--line);border-radius:8px;padding:1rem 1.1rem}.qr-url-box h2{color:var(--muted);font-size:.95rem;font-weight:500;margin:0 0 .6rem}.qr-url{font-family:JetBrains Mono,ui-monospace,Menlo,monospace;font-size:.92rem;line-height:1.9;margin:0 0 1rem;word-break:break-all}.qr-url .qr-base{color:var(--muted)}.qr-url .qr-seg{border-radius:3px;padding:.1rem .15rem;transition:background-color .25s ease}.qr-url .qr-seg .qr-v{font-weight:600}.qr-url .qr-seg.qr-flash{animation:qr-flash .6s ease}@keyframes qr-flash{0%{filter:brightness(1.25)}to{filter:none}}.qr-actions{display:flex;flex-wrap:wrap;gap:.6rem}.qrcode-page button{background:#0000;border:1px solid var(--line);border-radius:6px;color:var(--ink);cursor:pointer;font:inherit;font-weight:500;padding:.55rem 1rem}.qrcode-page button.qr-primary{background:var(--accent);border-color:var(--accent);color:#fff}.qrcode-page[data-theme=dark] button.qr-primary{color:#0f1522}@media (prefers-color-scheme:dark){.qrcode-page:not([data-theme=light]) button.qr-primary{color:#0f1522}}.qrcode-page button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.qrcode-page a.qr-open{align-items:center;border:1px solid var(--line);border-radius:6px;color:var(--ink);display:inline-flex;font-weight:500;padding:.55rem 1rem;text-decoration:none}.qrcode-page a.qr-open:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.qr-status{color:var(--muted);font-size:.9rem;margin-top:.6rem;min-height:1.4em}.qr-qr-panel{position:-webkit-sticky;position:sticky;top:calc(1.5rem + env(safe-area-inset-top, 0px))}.qr-qr-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:18px}.qr-image{aspect-ratio:1/1;width:100%}.qr-image canvas,.qr-image img{display:block;height:auto!important;image-rendering:pixelated;width:100%!important}.qr-qr-note{color:var(--muted);font-size:.88rem;margin:.75rem 0 0}@media (max-width:760px){.qr-qr-panel{max-width:320px;position:static}}@media (prefers-reduced-motion:reduce){.qr-url .qr-seg,.qr-url .qr-seg.qr-flash{animation:none;transition:none}}.qrcode-page{min-height:100vh}.qrcode-page .qr-image{background:#fff;box-sizing:border-box;padding:16px}.open-page{-webkit-font-smoothing:antialiased;align-items:center;background:radial-gradient(120% 80% at 50% 0,#eaf1f3 0,#f4f6f7 60%);display:flex;font-family:Noto Sans TC,-apple-system,BlinkMacSystemFont,PingFang TC,Microsoft JhengHei,sans-serif;justify-content:center;min-height:100vh;padding:32px 20px 24px}.open-page,.open-page *{box-sizing:border-box}.open-content{align-items:center;animation:open-fade-up .5s ease both;display:flex;flex-direction:column;max-width:400px;width:100%}.open-logo-frame{border-radius:22px;box-shadow:0 10px 28px #0c4a6038,0 1px 2px #00000014;height:88px;overflow:hidden;width:88px}.open-logo{display:block;height:100%;object-fit:cover;width:100%}.open-title{color:#12303b;font-size:24px;font-weight:700;letter-spacing:-.01em;margin:22px 0 0;text-align:center}.open-stores{align-items:center;display:flex;gap:14px;justify-content:center;margin-top:28px;width:100%}.open-store-link{border-radius:8px;box-shadow:0 5px 14px #0000002e;display:block;flex:none;transition:transform .15s ease,box-shadow .15s ease}.open-store-link:hover{box-shadow:0 9px 20px #00000042;transform:translateY(-1px)}.open-store-link:active{transform:translateY(0)}.open-app-button:focus-visible,.open-home-link:focus-visible,.open-store-link:focus-visible{outline:3px solid #0f7ba873;outline-offset:3px}.open-store-badge{border-radius:8px;display:block;height:45px;width:auto}.open-divider{align-items:center;color:#8ba1aa;display:flex;font-size:12px;gap:12px;letter-spacing:.04em;margin:26px 0 20px;width:100%}.open-divider:after,.open-divider:before{background:#dde5e8;content:"";flex:1 1;height:1px}.open-instructions{color:#5c7580;font-size:14px;line-height:1.6;margin:0 0 14px;text-align:center}.open-app-button{align-items:center;background:linear-gradient(100deg,#0b5fa5,#12816f);border:0;border-radius:14px;box-shadow:0 8px 22px #0b5f7847;color:#fff;cursor:pointer;display:flex;font-family:inherit;font-size:17px;font-weight:700;gap:10px;height:56px;justify-content:center;text-decoration:none;transition:transform .15s ease,box-shadow .15s ease;width:100%}.open-app-button:hover{box-shadow:0 12px 28px #0b5f7857;transform:translateY(-1px)}.open-app-button:active{transform:translateY(0)}.open-app-button[aria-busy=true]{cursor:wait;opacity:.9}.open-spinner{animation:open-spin .7s linear infinite;border:2px solid #fff6;border-radius:50%;border-top-color:#fff;height:16px;width:16px}.open-help{background:#fff;border:1px solid #e2eaed;border-radius:12px;color:#5c7580;font-size:13px;line-height:1.65;margin-top:14px;padding:14px 16px;text-align:center;width:100%}.open-help a,.open-home-link{color:#0f7ba8;text-decoration:none}.open-help a{margin:0 4px}.open-help a:hover,.open-home-link:hover{color:#0a5f82}.open-footnote{color:#9aacb4;font-size:12px;line-height:1.6;margin:24px 0 0;text-align:center}.open-home-link{font-size:15px;font-weight:500;margin-top:20px}@keyframes open-fade-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes open-spin{to{transform:rotate(1turn)}}@media (max-width:360px){.open-stores{flex-direction:column}}@media (prefers-reduced-motion:reduce){.open-content,.open-spinner{animation:none}.open-app-button,.open-store-link{transition:none}}
/*# sourceMappingURL=main.2ee9b5ab.css.map*/