.tool-qrcode{max-width:560px;margin:0 auto;font-family:-apple-system,"Segoe UI",Roboto,"Microsoft JhengHei",sans-serif;text-align:center;}
.title-qrcode{font-size:1.5rem;margin:0 0 16px;}
.lbl-qrcode{display:block;text-align:left;font-size:.85rem;color:#666;margin:0 0 4px;}
.tool-qrcode textarea{width:100%;box-sizing:border-box;padding:12px;border:1px solid #d0d0d0;border-radius:8px;font-size:.95rem;resize:vertical;}
.opt-row-qrcode{display:flex;flex-wrap:wrap;gap:12px;align-items:end;justify-content:center;margin:14px 0;}
.opt-row-qrcode label{font-size:.85rem;color:#555;display:flex;flex-direction:column;gap:4px;text-align:left;}
.opt-row-qrcode select{padding:8px 10px;border:1px solid #d0d0d0;border-radius:8px;}
.opt-row-qrcode #gen-qrcode{padding:10px 22px;border:none;border-radius:8px;background:#2d6cdf;color:#fff;cursor:pointer;align-self:end;}
.qr-box-qrcode{display:inline-block;padding:18px;background:#fff;border:1px solid #eee;border-radius:14px;margin:6px 0;min-height:60px;}
.qr-box-qrcode img,.qr-box-qrcode canvas{display:block;}
.btn-row-qrcode{margin:12px 0;}
.btn-row-qrcode button{padding:9px 18px;border:1px solid #d0d0d0;background:#f7f7f7;border-radius:8px;cursor:pointer;}
.msg-qrcode{min-height:20px;font-size:.9rem;color:#c0392b;}
.msg-qrcode.ok{color:#27ae60;}
