:root{--qr-bg: #0f0f13;--qr-fg: #f0f0f5;--qr-card: #1a1a24;--qr-border: #2a2a3a;--qr-accent: #6c63ff;--qr-accent-h: #5a52d5;--qr-muted: rgba(240, 240, 245, .45);--qr-input-bg: #0f0f13}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,system-ui,-apple-system,sans-serif;background:var(--qr-bg);color:var(--qr-fg);min-height:100vh}.qr-nav{padding:14px 0;border-bottom:1px solid var(--qr-border)}.qr-nav__inner{max-width:1100px;margin:0 auto;padding:0 24px}.qr-nav__back{display:inline-flex;align-items:center;gap:6px;color:var(--qr-muted);text-decoration:none;font-size:14px;font-weight:500;transition:color .2s}.qr-nav__back:hover{color:var(--qr-fg)}.qr-main{display:flex;justify-content:center;align-items:flex-start;padding:32px 16px 64px}.qr-card{width:100%;max-width:900px;background:var(--qr-card);border:1px solid var(--qr-border);border-radius:24px;overflow:hidden;box-shadow:0 32px 64px #00000080}.qr-card__header{padding:28px 32px 24px;border-bottom:1px solid var(--qr-border)}.qr-card__header h1{margin:0 0 4px;font-size:26px;font-weight:700;letter-spacing:-.3px}.qr-card__header p{margin:0;font-size:13px;color:var(--qr-muted)}.qr-body{display:flex;flex-direction:column;gap:24px;padding:28px 32px}@media (min-width: 680px){.qr-body{flex-direction:row}}.qr-controls{flex:1;display:flex;flex-direction:column;gap:20px;min-width:0}.qr-field{display:flex;flex-direction:column;gap:6px}.qr-label{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;color:var(--qr-muted)}.qr-row{display:flex;gap:8px;align-items:center}.qr-row--between{justify-content:space-between}.qr-mono{font-size:12px;font-family:SF Mono,ui-monospace,monospace;color:var(--qr-muted)}.qr-hint{font-size:12px;color:#f0f0f54d}.qr-controls input[type=text]{flex:1;background:var(--qr-input-bg);border:1px solid var(--qr-border);border-radius:12px;padding:10px 14px;font-size:14px;color:var(--qr-fg);outline:none;transition:border-color .2s}.qr-controls input[type=text]::placeholder{color:#f0f0f540}.qr-controls input[type=text]:focus{border-color:var(--qr-accent)}.qr-grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.qr-color-wrap{height:40px;border:1px solid var(--qr-border);border-radius:12px;overflow:hidden;cursor:pointer}.qr-color-wrap input[type=color]{-moz-appearance:none;appearance:none;-webkit-appearance:none;border:none;width:100%;height:100%;cursor:pointer;padding:0;background:none}.qr-color-wrap input[type=color]::-webkit-color-swatch-wrapper{padding:0}.qr-color-wrap input[type=color]::-webkit-color-swatch{border:none;border-radius:0}.qr-controls input[type=range]{width:100%;accent-color:var(--qr-accent);cursor:pointer;height:4px}.qr-ecl-group{display:grid;grid-template-columns:repeat(4,1fr);gap:8px}.qr-ecl-btn{padding:8px 0;border-radius:10px;font-size:12px;font-weight:700;border:1px solid var(--qr-border);background:transparent;color:var(--qr-muted);cursor:pointer;transition:border-color .15s,color .15s,background .15s}.qr-ecl-btn:hover{border-color:var(--qr-accent);color:var(--qr-fg)}.qr-ecl-btn--active{background:var(--qr-accent);border-color:var(--qr-accent);color:#fff}.qr-logo-drop{display:flex;align-items:center;justify-content:center;gap:8px;height:42px;border:1px dashed var(--qr-border);border-radius:12px;color:var(--qr-muted);font-size:13px;cursor:pointer;transition:border-color .2s,color .2s}.qr-logo-drop:hover{border-color:var(--qr-accent);color:var(--qr-fg)}.qr-logo-drop input[type=file]{display:none}.qr-logo-controls{display:flex;flex-direction:column;gap:8px;margin-top:4px}.btn-accent{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:12px;background:var(--qr-accent);color:#fff;font-size:13px;font-weight:600;border:none;cursor:pointer;transition:background .15s;white-space:nowrap}.btn-accent:hover{background:var(--qr-accent-h)}.btn-outline{display:inline-flex;align-items:center;gap:6px;padding:10px 16px;border-radius:12px;background:transparent;color:var(--qr-muted);font-size:13px;font-weight:600;border:1px solid var(--qr-border);cursor:pointer;transition:border-color .15s,color .15s;white-space:nowrap}.btn-outline:hover{border-color:var(--qr-accent);color:var(--qr-fg)}.btn-danger{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:8px;background:transparent;color:#f87171;font-size:12px;font-weight:500;border:none;cursor:pointer;transition:color .15s;align-self:flex-start}.btn-danger:hover{color:#fca5a5}.qr-preview{display:flex;flex-direction:column;align-items:center;gap:16px;flex-shrink:0}.qr-canvas-wrap{border-radius:16px;overflow:hidden;box-shadow:0 8px 32px #0006;line-height:0;background:#fff}.qr-canvas-wrap canvas{display:block;max-width:100%}.qr-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:center}@media (max-width: 439px){.qr-card__header,.qr-body{padding-left:20px;padding-right:20px}.qr-actions .btn-accent,.qr-actions .btn-outline{padding:9px 12px;font-size:12px}}
