@font-face{font-family:Manrope Variable;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2)format("woff2-variations");font-weight:200 800;font-style:normal;font-display:swap}@font-face{font-family:DM Mono;src:url(/assets/dm-mono-latin-400-normal-4GdczIuU.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:DM Mono;src:url(/assets/dm-mono-latin-500-normal-DRMDZjhP.woff2)format("woff2");font-weight:500;font-style:normal;font-display:swap}:root{color:#10241f;font-synthesis:none;text-rendering:optimizelegibility;--ink:#10241f;--muted:#64736e;--line:#d9e1dd;--paper:#fff;--lime:#b9f34a;--mint:#dff9bd;--soft:#ecf1ee;background:#f4f7f4;font-family:Manrope Variable,Manrope,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:#f4f7f4;min-width:320px;min-height:100vh;margin:0}button,input,textarea,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{color:inherit}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,[tabindex]:focus-visible{outline-offset:2px;outline:3px solid #62a02859}.site-shell{overflow:hidden}.site-header{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;width:min(1180px,100% - 48px);height:82px;margin:0 auto;display:flex}.brand{letter-spacing:-.03em;align-items:center;gap:11px;font-size:17px;font-weight:800;display:inline-flex}.brand-mark{background:var(--ink);border-radius:8px;grid-template-columns:1fr 1fr;gap:3px;width:31px;height:31px;padding:5px;display:grid;position:relative}.brand-mark i{border:2px solid var(--lime);border-radius:1px;display:block}.brand-mark i:last-child{background:var(--lime);clip-path:polygon(0 0,42% 0,42% 58%,100% 58%,100% 100%,0 100%);border:0}.site-header nav{align-items:center;gap:34px;font-size:13px;font-weight:600;display:flex}.site-header nav button{cursor:pointer;background:0 0;border:0;padding:8px 0}.site-header nav a:hover,.site-header nav button:hover{opacity:.58}.language-switch{border:1px solid var(--line);color:#40504b;cursor:pointer;background:#ffffff8c;border-radius:999px;min-width:54px;height:34px;padding:0 12px;font-size:11px;font-weight:800}.language-switch:hover{background:#fff;border-color:#92a49a}.toast{z-index:30;color:#fff;background:var(--ink);border-radius:999px;align-items:center;gap:8px;padding:11px 16px;font-size:13px;font-weight:700;display:flex;position:fixed;top:22px;left:50%;transform:translate(-50%);box-shadow:0 12px 28px #10241f33}.hero{text-align:center;width:min(920px,100% - 48px);margin:0 auto;padding:92px 0 77px;position:relative}.hero:before,.hero:after{content:"";border:1px solid #4b5f5714;border-radius:50%;width:190px;height:190px;position:absolute}.hero:before{top:80px;left:-210px;box-shadow:0 0 0 40px #4b5f5706,0 0 0 80px #4b5f5705}.hero:after{bottom:30px;right:-220px;box-shadow:0 0 0 50px #4b5f5706}.eyebrow{color:#53645e;text-transform:uppercase;letter-spacing:.12em;align-items:center;gap:9px;font-family:DM Mono,monospace;font-size:11px;font-weight:500;display:inline-flex}.eyebrow span{background:#73a72e;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #73a72e1f}.hero h1{letter-spacing:-.066em;margin:25px 0 20px;font-size:clamp(50px,7vw,82px);font-weight:800;line-height:.98}html[lang=zh-CN] .hero h1{letter-spacing:-.045em}.hero h1 em{color:#52775c;font-style:normal}.hero>p{max-width:620px;color:var(--muted);margin:0 auto;font-size:17px;line-height:1.7}.hero-actions{justify-content:center;align-items:center;gap:25px;margin-top:33px;display:flex}.primary-button,.secondary-button,.icon-button,.camera-button,.text-button{cursor:pointer;border:0;transition:transform .18s,box-shadow .18s,background .18s}.primary-button{min-height:48px;color:var(--ink);background:var(--lime);border-radius:10px;justify-content:center;align-items:center;gap:10px;padding:0 20px;font-size:13px;font-weight:800;display:inline-flex;box-shadow:inset 0 0 0 1px #35540a14,0 8px 22px #4e692821}.primary-button:hover,.camera-button:hover{transform:translateY(-1px);box-shadow:0 10px 28px #4e69282e}.primary-button:disabled,.secondary-button:disabled,.icon-button:disabled{cursor:not-allowed;opacity:.42;box-shadow:none;transform:none}.text-button{background:0 0;align-items:center;gap:8px;padding:12px 0;font-size:13px;font-weight:700;display:inline-flex}.text-button:hover{opacity:.6}.trust-row{color:#687872;flex-wrap:wrap;justify-content:center;gap:25px;margin-top:32px;font-size:11px;font-weight:600;display:flex}.trust-row span{align-items:center;gap:6px;display:flex}.trust-row svg{color:#6e9f2e}.tool-wrap{background:var(--paper);border:1px solid #cad5d0;border-radius:18px;width:min(1180px,100% - 48px);margin:0 auto;scroll-margin-top:20px;box-shadow:0 25px 70px #26393214}.tool-tabs{border-bottom:1px solid var(--line);background:#eef2ef;border-radius:18px 18px 0 0;padding:8px;display:flex}.tool-tabs button{color:#697973;cursor:pointer;background:0 0;border:0;border-radius:10px;flex:1;justify-content:center;align-items:center;gap:9px;height:49px;font-size:13px;font-weight:700;display:flex}.tool-tabs button[aria-selected=true]{color:var(--ink);background:#fff;box-shadow:0 1px 7px #1f302a14,inset 0 0 0 1px #1f302a0a}.generator-grid,.scanner-grid{grid-template-columns:minmax(0,1.28fr) minmax(340px,.72fr);min-height:590px;display:grid}.tool-controls,.scanner-copy{padding:42px 48px 48px}.section-heading{align-items:flex-start;gap:15px;margin-bottom:24px;display:flex}.section-heading.compact{margin-bottom:21px}.step-number{color:#30473e;background:var(--mint);border-radius:5px;flex:0 0 30px;place-items:center;height:24px;margin-top:2px;font-family:DM Mono,monospace;font-size:10px;font-weight:500;display:inline-grid}.section-heading h2{letter-spacing:-.025em;margin:0 0 5px;font-size:17px}.section-heading p{color:var(--muted);margin:0;font-size:12px;line-height:1.55}.kind-picker{border:1px solid var(--line);background:#f5f7f5;border-radius:10px;grid-template-columns:repeat(7,minmax(60px,1fr));gap:6px;margin-bottom:19px;padding:5px;display:grid}.kind-picker button{color:#687771;cursor:pointer;background:0 0;border:0;border-radius:7px;height:37px;font-size:12px;font-weight:700}.kind-picker button.active{color:#fff;background:var(--ink);box-shadow:0 4px 10px #10241f24}.field-label{color:#34473f;flex-direction:column;gap:8px;font-size:11px;font-weight:700;display:flex}.field-label>span{color:#8a9692;font-weight:500}.field-label input,.field-label textarea,.field-label select,.customize-row select{border:1px solid var(--line);width:100%;color:var(--ink);background:#fbfcfb;border-radius:9px;outline:none;font-size:13px;transition:border-color .18s,box-shadow .18s}.field-label input{height:47px;padding:0 14px}.field-label textarea{resize:vertical;padding:12px 14px;line-height:1.55}.field-label select{height:47px;padding:0 12px}.field-label input:focus,.field-label textarea:focus,.field-label select:focus,.customize-row select:focus{border-color:#7d9a8b;box-shadow:0 0 0 3px #5174611a}.field-label small{color:#8b9692;margin-left:auto;font-size:10px;font-weight:500}.field-stack{flex-direction:column;gap:14px;display:flex}.field-row{grid-template-columns:.7fr 1.3fr;gap:12px;display:grid}.field-row.equal{grid-template-columns:repeat(2,1fr)}.control-divider{background:var(--line);height:1px;margin:27px 0 25px}.customize-row{grid-template-columns:1fr 1fr 1fr;gap:11px;display:grid}.customize-row>label{color:#51635c;flex-direction:column;gap:8px;font-size:10px;font-weight:700;display:flex}.color-input{border:1px solid var(--line);background:#fbfcfb;border-radius:9px;align-items:center;gap:8px;height:42px;padding:5px 10px 5px 6px;display:flex}.color-input input{cursor:pointer;background:0 0;border:0;border-radius:6px;flex:0 0 29px;width:29px;height:29px;padding:0;overflow:hidden}.color-input input::-webkit-color-swatch-wrapper{padding:0}.color-input input::-webkit-color-swatch{border:0;border-radius:5px}.color-input b{text-transform:uppercase;font-family:DM Mono,monospace;font-size:9px;font-weight:500}.customize-row select{height:42px;padding:0 9px;font-size:11px}.qr-preview-panel,.scanner-result-panel{border-left:1px solid var(--line);background:#edf2ef;border-radius:0 0 18px;flex-direction:column;justify-content:center;padding:42px;display:flex}.preview-kicker{color:#51625b;text-transform:uppercase;letter-spacing:.09em;align-items:center;gap:7px;margin-bottom:15px;font-family:DM Mono,monospace;font-size:9px;display:flex}.live-dot{background:#67a020;border-radius:50%;width:6px;height:6px;box-shadow:0 0 0 4px #67a0201f}.qr-stage{aspect-ratio:1;background:#fff;border:1px solid #d4ddd8;border-radius:16px;place-items:center;width:100%;max-width:318px;margin:0 auto;padding:29px;display:grid;box-shadow:0 13px 34px #283d3514}.qr-stage img{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;display:block}.empty-qr{color:#8c9995;flex-direction:column;align-items:center;gap:14px;font-size:11px;display:flex}.empty-qr .brand-mark{opacity:.22}.download-grid{grid-template-columns:1fr 64px 46px;gap:8px;width:100%;max-width:318px;margin:16px auto 0;display:grid}.secondary-button,.icon-button{background:#fff;border:1px solid #ccd7d1;border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:46px;padding:0 15px;font-size:11px;font-weight:800;display:inline-flex}.secondary-button:hover,.icon-button:hover{background:#f9fbf9;border-color:#92a49a}.preview-note{color:#788680;text-align:center;justify-content:center;align-items:center;gap:6px;margin:14px 0 0;font-size:9px;display:flex}.inline-error{color:#9f433a;text-align:center;margin:10px 0 0;font-size:11px}.scanner-grid{grid-template-columns:minmax(0,1fr) minmax(380px,1fr)}.drop-zone{cursor:pointer;text-align:center;background:#fafcfb;border:1px dashed #9fb1a8;border-radius:13px;flex-direction:column;justify-content:center;align-items:center;min-height:226px;padding:24px;transition:border-color .18s,background .18s,transform .18s;display:flex}.drop-zone:hover,.drop-zone:focus{background:#f4f8f5;border-color:#5f7d6d}.drop-zone.loading{opacity:.7}.upload-icon{color:#557264;background:var(--mint);border-radius:13px;place-items:center;width:52px;height:52px;margin-bottom:13px;display:grid}.drop-zone h3{margin:0 0 6px;font-size:14px}.drop-zone p{color:var(--muted);margin:0;font-size:11px}.batch-hint{color:#798983;margin-top:7px;font-size:9px}.file-types{color:#91a099;letter-spacing:.12em;margin-top:15px;font-family:DM Mono,monospace;font-size:8px}.upload-preview{object-fit:contain;background:#fff;border-radius:10px;width:80px;height:80px;margin-bottom:13px;box-shadow:0 5px 15px #182f271a}.or-divider{color:#9aa7a1;align-items:center;gap:12px;margin:16px 0;font-size:10px;display:flex}.or-divider:before,.or-divider:after{content:"";background:var(--line);flex:1;height:1px}.camera-button{color:#fff;background:var(--ink);border-radius:10px;justify-content:center;align-items:center;gap:9px;width:100%;height:48px;font-size:12px;font-weight:800;display:flex}.camera-note{color:#89958f;text-align:center;margin:9px 0 0;font-size:9px}.scanner-result-panel{justify-content:center}.camera-frame{aspect-ratio:4/3;color:#7a8882;background:#dfe7e3;border-radius:15px;place-items:center;display:grid;position:relative;overflow:hidden}.camera-frame video{object-fit:cover;width:100%;height:100%}.camera-placeholder{text-align:center;flex-direction:column;align-items:center;gap:13px;max-width:180px;font-size:11px;line-height:1.5;display:flex;position:absolute}.scan-frame{position:absolute;inset:18%}.scan-frame i{border-color:var(--lime);border-style:solid;width:30px;height:30px;position:absolute}.scan-frame i:first-child{border-width:3px 0 0 3px;top:0;left:0}.scan-frame i:nth-child(2){border-width:3px 3px 0 0;top:0;right:0}.scan-frame i:nth-child(3){border-width:0 0 3px 3px;bottom:0;left:0}.scan-frame i:nth-child(4){border-width:0 3px 3px 0;bottom:0;right:0}.result-card,.scan-error{background:#fff;border:1px solid #ced9d3;border-radius:11px;margin-top:14px;padding:15px}.result-meta{justify-content:space-between;align-items:center;margin-bottom:11px;display:flex}.result-meta span{color:#5d812d;align-items:center;gap:6px;font-size:10px;font-weight:800;display:flex}.result-meta b{color:#576861;text-transform:uppercase;letter-spacing:.05em;background:#edf2ef;border-radius:5px;padding:4px 7px;font-size:8px}.result-card>p{color:#35483f;overflow-wrap:anywhere;max-height:110px;margin:0;font-family:DM Mono,monospace;font-size:10px;line-height:1.6;overflow:auto}.result-actions{gap:8px;margin-top:13px;display:flex}.result-actions>*{flex:1}.primary-button.small{min-height:46px;font-size:11px}.scan-error strong{color:#843f39;font-size:12px}.scan-error p{color:#7b6966;margin:5px 0 0;font-size:10px;line-height:1.55}.scan-history{background:#fff;border:1px solid #ced9d3;border-radius:11px;max-height:260px;margin-top:14px;overflow:hidden}.scan-history-head{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:12px 13px;display:flex}.scan-history-head h3{margin:0;font-size:11px}.scan-history-head h3 span{background:var(--mint);border-radius:999px;place-items:center;min-width:20px;height:20px;margin-left:5px;font-size:9px;display:inline-grid}.scan-history-head>div{gap:5px;display:flex}.scan-history-head button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:6px;height:28px;padding:0 8px;font-size:8px;font-weight:800}.scan-history ol{max-height:207px;margin:0;padding:0;list-style:none;overflow:auto}.scan-history li{border-bottom:1px solid #edf1ef;padding:10px 13px}.scan-history li:last-child{border-bottom:0}.scan-history li div{justify-content:space-between;align-items:center;gap:10px;display:flex}.scan-history li strong{text-overflow:ellipsis;white-space:nowrap;font-size:9px;overflow:hidden}.scan-history li span{color:#788780;flex:none;font-size:8px}.scan-history li p{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;margin:4px 0 0;font-family:DM Mono,monospace;font-size:8px;overflow:hidden}.proof-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);width:min(1020px,100% - 48px);margin:72px auto 0;display:grid}.proof-strip div{border-right:1px solid var(--line);flex-direction:column;align-items:center;gap:2px;padding:24px;display:flex}.proof-strip div:last-child{border-right:0}.proof-strip strong{letter-spacing:-.04em;font-size:21px}.proof-strip span{color:#7a8983;text-transform:uppercase;letter-spacing:.07em;font-size:9px}.how-section{width:min(1050px,100% - 48px);margin:0 auto;padding:115px 0 120px}.section-intro{max-width:680px}.section-intro h2,.faq-section h2,.bottom-cta h2{letter-spacing:-.055em;margin:20px 0 16px;font-size:clamp(34px,5vw,52px);line-height:1.08}.section-intro>p{max-width:560px;color:var(--muted);margin:0;font-size:14px;line-height:1.7}.feature-grid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:48px;display:grid}.feature-grid article{border:1px solid var(--line);background:#ffffff7a;border-radius:13px;padding:28px}.feature-grid article>span{background:var(--mint);border-radius:10px;place-items:center;width:42px;height:42px;display:grid}.feature-grid h3{margin:25px 0 8px;font-size:15px}.feature-grid p{color:var(--muted);margin:0;font-size:11px;line-height:1.7}.ai-section{border-top:1px solid var(--line);width:min(1050px,100% - 48px);margin:0 auto;padding:100px 0}.ai-grid{grid-template-columns:1.35fr 1fr 1fr;gap:14px;margin-top:48px;display:grid}.ai-card{border:1px solid var(--line);min-width:0;min-height:255px;color:var(--ink);background:#ffffff94;border-radius:14px;flex-direction:column;padding:26px;text-decoration:none;transition:transform .18s,border-color .18s;display:flex}.ai-card:hover{border-color:#9eb6aa;transform:translateY(-3px)}.ai-card-primary{color:#fff;background:var(--ink);border-color:var(--ink)}.ai-card-label{color:#355045;background:var(--mint);letter-spacing:.08em;border-radius:5px;align-self:flex-start;padding:5px 8px;font-family:DM Mono,monospace;font-size:9px;font-weight:800}.ai-card h3{letter-spacing:-.025em;margin:24px 0 9px;font-size:17px}.ai-card p{color:var(--muted);margin:0 0 18px;font-size:11px;line-height:1.7}.ai-card-primary p{color:#bdcbc5}.ai-card code{color:#d6e2dd;text-overflow:ellipsis;white-space:nowrap;background:#ffffff14;border-radius:7px;margin-bottom:18px;padding:9px 10px;font-family:DM Mono,monospace;font-size:9px;overflow:hidden}.ai-card strong{align-items:center;gap:7px;margin-top:auto;font-size:10px;display:flex}.ai-attribution{color:#74847d;margin:22px 0 0;font-size:10px;line-height:1.6}.faq-section{border-top:1px solid var(--line);grid-template-columns:.75fr 1.25fr;gap:80px;width:min(1050px,100% - 48px);margin:0 auto;padding:100px 0;display:grid}.faq-section h2{margin-top:18px}.faq-list{border-top:1px solid var(--line)}.faq-list details{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;padding:22px 36px 22px 0;font-size:13px;font-weight:800;list-style:none;position:relative}.faq-list summary:after{content:"+";color:#75857e;font-family:DM Mono,monospace;font-size:20px;font-weight:400;position:absolute;top:19px;right:5px}.faq-list details[open] summary:after{content:"−"}.faq-list p{color:var(--muted);margin:-8px 35px 22px 0;font-size:11px;line-height:1.7}.bottom-cta{color:#fff;background:var(--ink);text-align:center;border-radius:18px;width:min(1050px,100% - 48px);margin:0 auto 80px;padding:70px 30px}.bottom-cta .brand-mark{background:#ffffff17;margin:0 auto}.bottom-cta h2{margin-bottom:10px;font-size:clamp(34px,5vw,50px)}.bottom-cta p{color:#aab8b3;margin:0 0 25px;font-size:13px}.bottom-cta .primary-button{margin:0 auto}footer{border-top:1px solid var(--line);color:#71807a;align-items:center;gap:25px;width:min(1180px,100% - 48px);min-height:90px;margin:0 auto;font-size:10px;display:flex}footer .brand{color:var(--ink);font-size:14px}footer .brand-mark{border-radius:6px;width:25px;height:25px;padding:4px}footer p{margin:0 auto 0 0}footer>a:not(.brand){font-weight:700}footer>a:not(.brand):hover{color:var(--ink)}@media (width<=850px){.site-header{width:min(100% - 32px,720px)}.site-header nav{display:none}.language-switch{font-size:10px}.hero{width:min(100% - 32px,720px);padding-top:70px}.tool-wrap{width:min(100% - 24px,720px)}.generator-grid,.scanner-grid{grid-template-columns:1fr}.qr-preview-panel,.scanner-result-panel{border-top:1px solid var(--line);border-left:0;border-radius:0 0 18px 18px}.proof-strip{grid-template-columns:repeat(2,1fr);width:min(100% - 32px,720px)}.proof-strip div:nth-child(2){border-right:0}.proof-strip div:nth-child(-n+2){border-bottom:1px solid var(--line)}.how-section,.ai-section,.faq-section,.bottom-cta,footer{width:min(100% - 32px,720px)}.feature-grid,.ai-grid{grid-template-columns:1fr}.ai-card{min-height:220px}.faq-section{grid-template-columns:1fr;gap:25px}.kind-picker{grid-template-columns:repeat(4,1fr)}}@media (width<=540px){.site-header{height:68px}.language-switch{min-width:48px;padding:0 9px}.hero{padding:60px 0 55px}.hero h1{font-size:48px}.hero>p{font-size:14px}.hero-actions{flex-direction:column;gap:5px}.hero-actions .primary-button{width:100%}.trust-row{gap:11px 18px}.tool-tabs button{font-size:11px}.tool-controls,.scanner-copy{padding:30px 22px 34px}.qr-preview-panel,.scanner-result-panel{padding:30px 22px}.customize-row{grid-template-columns:1fr 1fr}.customize-row>label:last-child{grid-column:1/-1}.field-row,.field-row.equal{grid-template-columns:1fr}.proof-strip{margin-top:48px}.proof-strip div{padding:19px 10px}.how-section{padding:82px 0}.ai-section{padding:75px 0}.ai-grid{margin-top:34px}.ai-card{min-height:0;padding:23px}.faq-section{padding:75px 0}.bottom-cta{margin-bottom:50px;padding:55px 22px}footer{flex-wrap:wrap;gap:10px 18px;padding:24px 0}footer p{order:3;width:100%}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
