.qr-wrap{display:flex;flex-direction:column;flex:1;min-height:0;background:var(--bg)}.qr-grid{flex:none;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:28px;padding:20px 16px 24px;max-width:var(--frame);width:100%;margin:0 auto;box-sizing:border-box;align-items:start}.qr-left,.qr-right{display:flex;flex-direction:column;gap:14px;min-width:0}.qr-wrap input:not([type=color]):not([type=file]),.qr-wrap select,.qr-wrap textarea{font:inherit;font-size:16px;min-width:0;box-sizing:border-box;padding:8px 10px;border:1px solid var(--border-2);border-radius:var(--radius-s);background:var(--bg);color:var(--text);min-height:40px;width:100%}.qr-wrap input:disabled{background:var(--bg-2);color:var(--text-2)}.qr-wrap label{display:flex;flex-direction:column;gap:4px;font-size:var(--fs-s);font-weight:600;color:var(--text-2)}.qr-types{display:flex;flex-wrap:wrap;gap:6px}.qr-types button{border:1px solid var(--border-2);background:var(--bg);color:var(--text);border-radius:999px;padding:8px 14px;min-height:40px;font:inherit;font-size:var(--fs-s);cursor:pointer}.qr-types button.is-on{background:var(--text);color:#fff;border-color:var(--text)}.qr-form{display:flex;flex-direction:column;gap:10px}.qr-design{border:1px solid var(--border);border-radius:var(--radius);padding:10px 14px;background:var(--bg-2)}.qr-design summary{cursor:pointer;font-weight:600;min-height:32px;display:flex;align-items:center}.qr-design[open] summary{margin-bottom:8px}.qr-sw{display:flex;flex-wrap:wrap;gap:8px;align-items:end;margin-bottom:10px}.qr-sw>button{width:36px;height:36px;border-radius:50%;border:2px solid var(--bg);outline:1px solid var(--border-2);cursor:pointer}.qr-sw>button.is-on{outline:2px solid var(--accent)}.qr-sw input[type=color]{width:56px;height:40px;padding:2px;border:1px solid var(--border-2);border-radius:var(--radius-s);background:var(--bg)}.qr-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:10px;align-items:end}.qr-file{font-weight:600}.qr-preview{background:var(--bg-2);border:1px solid var(--border);border-radius:var(--radius);padding:16px;display:flex;justify-content:center}.qr-preview canvas{width:100%;max-width:340px;height:auto;aspect-ratio:1;border-radius:8px;background:#fff}.qr-actions{display:flex;flex-wrap:wrap;gap:8px}.qr-hint,.qr-sub{color:var(--text-2);font-size:var(--fs-s);margin:0;line-height:1.5}.qr-err{color:var(--danger);font-size:var(--fs-s);margin:0}.qr-warn{color:var(--warn);font-size:var(--fs-s);margin:0;line-height:1.45}.qr-link{background:none;border:0;padding:0;color:var(--accent);text-decoration:underline;cursor:pointer;font:inherit}.qr-dyn{flex:none;border-top:1px solid var(--border);background:var(--bg-2);padding:24px 16px 40px}.qr-dyn>*{max-width:var(--frame);margin-left:auto;margin-right:auto}.qr-dyn h2{margin:0 auto 10px;font-size:var(--fs-xl)}.qr-dyn-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:28px;align-items:start;margin-top:8px}.qr-make{display:flex;flex-direction:column;gap:10px;margin-top:12px}.qr-url{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg)}.qr-url code{flex:1 1 220px;min-width:0;overflow-wrap:anywhere;font-family:var(--font-mono);font-size:14px}.qr-list{display:flex;flex-direction:column;gap:4px;margin-top:14px}.qr-list button{display:flex;justify-content:space-between;gap:10px;text-align:left;border:1px solid var(--border);background:var(--bg);border-radius:var(--radius-s);padding:8px 10px;min-height:40px;font:inherit;cursor:pointer;color:var(--text)}.qr-list button.is-on{border-color:var(--accent)}.qr-list span{color:var(--text-2);font-size:var(--fs-s);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qr-stats{display:flex;flex-direction:column;gap:10px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg);padding:14px}.qr-big{font-size:34px;font-weight:700;margin:0}.qr-big span{font-size:var(--fs-s);font-weight:400;color:var(--text-2)}.qr-bars{display:flex;align-items:end;gap:3px;height:90px;border-bottom:1px solid var(--border)}.qr-bars i{flex:0 1 26px;max-width:26px;background:var(--accent);border-radius:2px 2px 0 0;min-width:3px}@media(max-width:860px){.qr-grid,.qr-dyn-grid{grid-template-columns:minmax(0,1fr)}.qr-row{grid-template-columns:1fr}}
