:root{color:#162019;--font-ui:"Microsoft YaHei", "PingFang SC", "Noto Sans CJK SC", system-ui, sans-serif;--font-mono:"Cascadia Mono", Consolas, monospace;font-family:var(--font-ui);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;background:#edf1ed}*{box-sizing:border-box}body{width:100%;min-width:320px;margin:0}.qr-tool{--qr-accent:#0f6f4c;--qr-ink:#172a21;--qr-muted:#6b7b71;color:var(--qr-ink);width:100%;min-width:0}.qr-standalone{max-width:1280px;margin:0 auto;padding:36px 32px 48px}.qr-tool button,.qr-tool input,.qr-tool select{font:inherit}.qr-tool button,.qr-tool summary,.qr-tool a{-webkit-tap-highlight-color:transparent}.qr-tool button:focus-visible,.qr-tool input:focus-visible,.qr-tool select:focus-visible,.qr-tool summary:focus-visible,.qr-tool a:focus-visible{outline-offset:3px;outline:3px solid #65b696}.qr-tool button{cursor:pointer}.qr-tool button:disabled{cursor:wait;opacity:.55}.qr-tool-heading{justify-content:space-between;align-items:center;gap:20px;margin:4px 0 28px;display:flex}.qr-tool-brand{align-items:center;gap:14px;display:flex}.qr-brand-icon{color:#fff;background:#0f6f4c;border-radius:15px;flex-shrink:0;place-items:center;width:52px;height:52px;display:grid}.qr-tool-brand p{letter-spacing:.12em;color:var(--qr-accent);margin:0 0 5px;font-size:11px;font-weight:700}.qr-tool h1{letter-spacing:-.03em;margin:0;font-size:clamp(19px,2vw,25px);font-weight:750;line-height:1.4}.qr-local-badge{color:#3d6d55;white-space:nowrap;background:#f5fbf6;border:1px solid #d0e4d7;border-radius:30px;align-items:center;gap:6px;padding:8px 12px;font-size:12px;display:flex}.qr-tool-grid{grid-template-columns:minmax(320px,.9fr) minmax(360px,1.2fr);align-items:start;gap:24px;display:grid}.qr-controls,.qr-preview-panel{background:#fff;border:1px solid #dce5dd;border-radius:18px;min-width:0;box-shadow:0 6px 28px #223b2d05}.qr-controls{padding:28px}.qr-section-label{align-items:center;gap:10px;margin:0 0 20px;display:flex}.qr-section-label:not(:first-child){margin-top:30px}.qr-section-label>span{color:#2c7a56;width:27px;height:27px;font:700 11px var(--font-mono,monospace);background:#eef6ee;border-radius:8px;place-items:center;display:grid}.qr-tool h2{margin:0;font-size:15px;font-weight:750}.qr-field-label{margin-bottom:8px;font-size:12px;font-weight:650;display:block}.qr-link-input{color:#698273;background:#fcfdfb;border:1px solid #d2dfd5;border-radius:10px;align-items:center;gap:8px;height:48px;padding:0 12px;display:flex}.qr-link-input:focus-within{border-color:#22855d;box-shadow:0 0 0 3px #eaf5ed}.qr-link-input input{width:100%;min-width:0;height:100%;box-shadow:none;color:#193f2b;background:0 0;border:0;outline:none;padding:0}.qr-link-input input:focus-visible{outline:none}.qr-field-help{color:var(--qr-muted);margin:9px 0 0;font-size:11px;line-height:1.7}.qr-mode-options{grid-template-columns:1fr 1fr;gap:10px;display:grid}.qr-mode-options button{color:#738178;text-align:left;background:#fff;border:1px solid #dce4de;border-radius:11px;justify-items:start;gap:7px;padding:15px 14px;display:grid}.qr-mode-options button.is-active{color:#216442;background:#f0f8f2;border-color:#3a8964;box-shadow:inset 0 0 0 1px #3a896426}.qr-mode-options strong{color:var(--qr-ink);font-size:13px}.qr-mode-options small{white-space:normal;font-size:10px}.qr-template-choice{background:#fbfcfa;border:1px solid #e3eae4;border-radius:11px;align-items:center;gap:12px;margin-top:18px;padding:12px;display:flex}.qr-template-thumb{background:#fff;border:1px solid #e8ece5;border-radius:5px;flex-shrink:0;width:57px;height:53px;overflow:hidden}.qr-template-thumb img{object-fit:contain;width:100%;height:100%}.qr-template-choice>div:nth-child(2){flex:1;min-width:0}.qr-template-choice strong{text-overflow:ellipsis;white-space:nowrap;font-size:12px;display:block;overflow:hidden}.qr-template-choice small{color:var(--qr-muted);margin-top:6px;font-size:10px;display:block}.qr-template-choice>svg{color:#28784e}.qr-file-input{display:none}.qr-template-buttons{gap:10px;margin-top:11px;display:flex}.qr-template-buttons button{color:#445e4c;background:#fff;border:1px solid #dce5dd;border-radius:8px;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:7px 10px;font-size:11px;display:inline-flex}.qr-template-buttons button:first-child{flex:1}.qr-adjustments{border-top:1px solid #ecf0e9;margin-top:22px;padding-top:15px}.qr-adjustments summary{cursor:pointer;color:#3e5947;align-items:center;gap:7px;min-height:32px;font-size:12px;list-style:none;display:flex}.qr-adjustments summary::-webkit-details-marker{display:none}.qr-adjustments summary span{color:#7d8c82;margin-left:auto;font-size:10px}.qr-number-fields{grid-template-columns:repeat(3,minmax(0,1fr));gap:9px;margin-top:14px;display:grid}.qr-number-fields label{color:#647c6b;gap:6px;font-size:10px;display:grid}.qr-number-fields input{background:#fff;border:1px solid #dce4dd;border-radius:7px;width:100%;min-width:0;padding:8px}.qr-inline-field{color:#4c6555;justify-content:space-between;align-items:center;gap:10px;margin-top:14px;font-size:12px;display:flex}.qr-inline-field select{background:#fff;border:1px solid #dce4dd;border-radius:7px;max-width:65%;padding:8px 28px 8px 9px}.qr-export-scale{margin:21px 0 0}.qr-tool button.qr-generate{color:#fff;background:#0f6f4c;border:0;border-radius:10px;justify-content:center;align-items:center;gap:10px;width:100%;min-height:48px;margin-top:24px;font-size:14px;font-weight:700;display:flex}.qr-generate>svg:last-child,.qr-generate>svg:first-child{margin-left:auto}.qr-generate:hover:not(:disabled){background:#0b5b3d}.qr-privacy-note{color:#839186;justify-content:center;align-items:center;gap:5px;margin:13px 0 0;font-size:10px;display:flex}.qr-error{color:#993e25;background:#fff4ee;border:1px solid #f4d9cb;border-radius:8px;margin-top:16px;padding:11px;font-size:12px;line-height:1.6}.qr-preview-panel{overflow:hidden}.qr-preview-header{justify-content:space-between;align-items:center;gap:10px;padding:24px 25px 19px;display:flex}.qr-eyebrow{letter-spacing:.13em;color:#819487;margin-bottom:6px;font-size:9px;font-weight:700;display:block}.qr-state{color:#7c877e;background:#f2f4ef;border:1px solid #e4e9e1;border-radius:20px;padding:5px 10px;font-size:10px}.qr-state.is-ready{color:#24784b;background:#eff8f0;border-color:#cce3d2}.qr-preview-stage{background-color:#f3f5f1;background-image:radial-gradient(#d5ded3 .65px,#0000 .65px);background-size:12px 12px;justify-content:center;align-items:center;min-height:360px;padding:22px 24px;display:flex}.qr-preview-image{filter:drop-shadow(0 6px 11px #314f2912);width:100%;max-width:540px;position:relative}.qr-preview-image>img{border-radius:10px;width:100%;height:100%;display:block}.qr-region-mask{color:#afbeb2;pointer-events:none;background:#fff;flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex;position:absolute}.qr-region-mask span{font-size:11px}.qr-region-guide{pointer-events:none;background:#1c8b5010;border:2px dashed #17804e;position:absolute}.is-adjusting .qr-preview-image{cursor:crosshair}.qr-plain-preview{border-radius:9px;width:340px;max-width:100%;height:auto;box-shadow:0 5px 20px #29402d12}.qr-empty{color:#b1c3b3;flex-direction:column;justify-content:center;align-items:center;gap:14px;min-height:320px;display:flex}.qr-empty strong{color:#5c7361;font-size:14px}.qr-empty p{color:#809184;margin:0;font-size:11px}.qr-download-area{padding:20px 25px 18px}.qr-download-area>p{text-align:center;color:#839184;margin:0 0 14px;font-size:10px}.qr-download-actions{grid-template-columns:1fr 1fr;gap:10px;display:grid}.qr-download-actions a{border-radius:9px;justify-content:center;align-items:center;gap:7px;min-height:43px;font-size:12px;font-weight:650;text-decoration:none;display:flex}.qr-download-primary{color:#fff;background:#0f6f4c;border:1px solid #0f6f4c}.qr-download-secondary{color:#355f42;background:#fff;border:1px solid #d5e0d6}.qr-download-actions .is-disabled{opacity:.45;cursor:default}.qr-download-area>p.qr-result-link{overflow-wrap:anywhere;color:#4f6956;text-align:left;max-height:5em;margin:13px 0 0;font-size:10px;overflow:auto}.qr-scan-tip{color:#718371;background:#f8faf6;border-top:1px solid #e9eee6;align-items:flex-start;gap:8px;padding:14px 24px;display:flex}.qr-scan-tip>svg{flex-shrink:0;margin-top:2px}.qr-scan-tip p{margin:0;font-size:10px;line-height:1.8}.studio-shell.module-qr{grid-template-columns:232px minmax(0,1fr)}.studio-shell.module-qr .main-stage{min-width:0}.module-qr .qr-tool-heading{margin-top:8px}.module-qr .qr-local-badge{display:none}@media (width<=1150px){.module-qr .qr-tool-grid{grid-template-columns:1fr}.module-qr .qr-controls{max-width:none}.qr-tool-heading{align-items:flex-start}.qr-local-badge{font-size:10px}}@media (width<=760px){.qr-standalone{padding:22px 16px 28px}.qr-tool-heading{flex-direction:column;gap:12px;margin-bottom:20px}.qr-tool-brand{gap:10px}.qr-brand-icon{border-radius:12px;width:43px;height:43px}.qr-tool h1{font-size:18px}.qr-local-badge{margin-left:53px;padding:5px 9px}.qr-tool-grid{grid-template-columns:minmax(0,1fr);gap:18px}.qr-controls{padding:22px}.qr-preview-stage{min-height:280px;padding:24px}.qr-preview-header{padding:20px}.qr-tool .qr-download-actions{grid-template-columns:minmax(0,1fr)}.qr-privacy-note{font-size:9px}.studio-shell.module-qr{flex-direction:column;display:flex}}.qr-size-control{background:#f7faf5;border:1px solid #dde8dd;border-radius:10px;margin-top:21px;padding:15px}.qr-size-control label{color:#3d5e47;justify-content:space-between;gap:10px;font-size:12px;font-weight:650;display:flex}.qr-size-control output{color:#0f6f4c;font:700 11px var(--font-mono,monospace)}.qr-size-control input[type=range]{accent-color:#0f6f4c;cursor:pointer;width:100%;height:24px;box-shadow:none;border:0;margin:9px 0 3px;padding:0;display:block}.qr-size-control>div{color:#839583;justify-content:space-between;font-size:10px;display:flex}.qr-artwork-controls{border-top:1px solid #e2e9df;margin-top:15px;padding:15px 0 0}.qr-background-row{align-items:center;gap:11px;min-width:0;display:flex}.qr-background-swatch{color:#304438;background:#e7ead5;border:1px solid #becbb3;border-radius:50%;flex-shrink:0;place-items:center;width:50px;height:50px;display:grid;overflow:hidden}.qr-background-swatch img{object-fit:cover;width:100%;height:100%}.qr-background-swatch span{background:#f3efdb;padding:3px;font-size:13px;font-weight:900;line-height:1.1}.qr-background-row>div:last-child{min-width:0}.qr-background-row strong{font-size:12px;display:block}.qr-background-row small{color:#586e5e;overflow-wrap:anywhere;margin-top:5px;font-size:10px;display:block}.qr-caption-option{cursor:pointer;align-items:center;gap:7px;min-height:32px;margin-top:14px;font-size:12px;display:flex}.qr-caption-option input{accent-color:#0f6f4c;width:16px;height:16px;min-height:0;margin:0}.qr-material-actions{flex-wrap:wrap}.qr-material-actions button:first-child{color:#215c3b;background:#edf5ed;border-color:#c0d3c2}.qr-label-size{margin-top:9px}.qr-label-size>label{color:#385440;justify-content:space-between;gap:10px;font-size:12px;display:flex}.qr-label-size output{font-variant-numeric:tabular-nums;font-weight:700}.qr-label-size input[type=range]{width:100%;height:24px;box-shadow:none;accent-color:#0f6f4c;border:0;margin-top:6px;padding:0}.qr-material-dialog{color:#172a21;background:#fbfcf9;border:1px solid #d2ded2;border-radius:16px;width:min(700px,100vw - 32px);max-height:min(760px,100dvh - 40px);padding:24px;box-shadow:0 18px 64px #0b261a29}.qr-material-dialog::backdrop{background:#0f251b66}.qr-material-dialog-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:20px;display:flex}.qr-material-dialog-header h2{font-size:18px}.qr-material-dialog-header p{color:#526958;margin:8px 0 0;font-size:12px;line-height:1.65}.qr-material-dialog-header button{color:#36503e;background:#edf2e9;border:0;border-radius:8px;place-items:center;min-width:36px;min-height:36px;display:grid}.qr-material-gallery{grid-template-columns:repeat(5,minmax(0,1fr));gap:13px;display:grid}.qr-material-gallery button{color:#314b39;text-align:center;background:#fff;border:1px solid #dce5d8;border-radius:9px;min-width:0;padding:6px 6px 9px;position:relative}.qr-material-gallery button[aria-pressed=true]{background:#edf6eb;border:2px solid #247c51;padding:5px 5px 8px}.qr-material-gallery img{aspect-ratio:1;object-fit:contain;border-radius:4px;width:100%;display:block}.qr-material-gallery span{overflow-wrap:anywhere;margin-top:7px;font-size:10px;line-height:1.4;display:block}.qr-material-gallery svg{color:#247c51;background:#f5fbef;border-radius:50%;padding:1px;position:absolute;top:7px;right:7px}@media (width<=600px){.qr-material-dialog{padding:18px}.qr-material-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:11px}}
