:root{--bg-primary: #0f172a;--bg-secondary: #1e293b;--bg-tertiary: #334155;--text-primary: #f1f5f9;--text-secondary: #94a3b8;--accent: #3b82f6;--accent-hover: #2563eb;--accent-light: #60a5fa;--success: #22c55e;--error: #ef4444;--border: #475569;--border-light: #64748b;--radius: 8px;--radius-lg: 12px}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:var(--bg-primary);color:var(--text-primary);line-height:1.6;min-height:100vh}#root{min-height:100vh;display:flex;flex-direction:column}.app-container{max-width:1200px;margin:0 auto;padding:2rem 1.5rem;flex:1}.app-header{text-align:center;margin-bottom:2.5rem}.app-header h1{font-size:2rem;font-weight:700;background:linear-gradient(135deg,var(--accent-light),var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;margin-bottom:.5rem}.app-header p{color:var(--text-secondary);font-size:1rem}.main-layout{display:grid;grid-template-columns:1fr 380px;gap:2rem;align-items:start}.card{background:var(--bg-secondary);border:1px solid var(--border);border-radius:var(--radius-lg);padding:1.5rem}.card-title{font-size:1.1rem;font-weight:600;margin-bottom:1rem;color:var(--text-primary)}.tabs{display:flex;gap:.25rem;background:var(--bg-tertiary);border-radius:var(--radius);padding:.25rem;margin-bottom:1.5rem}.tab-btn{flex:1;padding:.5rem .75rem;border:none;background:transparent;color:var(--text-secondary);font-size:.85rem;font-weight:500;border-radius:calc(var(--radius) - 2px);cursor:pointer;transition:all .2s}.tab-btn:hover{color:var(--text-primary)}.tab-btn.active{background:var(--accent);color:#fff}.form-group{margin-bottom:1rem}.form-group label{display:block;font-size:.85rem;font-weight:500;color:var(--text-secondary);margin-bottom:.375rem}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.625rem .75rem;background:var(--bg-primary);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-primary);font-size:.9rem;transition:border-color .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--accent)}.form-group input[type=color]{height:40px;padding:4px;cursor:pointer}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.form-row-3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.75rem}.checkbox-group{display:flex;align-items:center;gap:.5rem}.checkbox-group input[type=checkbox]{width:auto;accent-color:var(--accent)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 1.5rem;border:none;border-radius:var(--radius);font-size:.9rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary{background:var(--accent);color:#fff;width:100%}.btn-primary:hover:not(:disabled){background:var(--accent-hover)}.btn-primary:disabled{opacity:.5;cursor:not-allowed}.btn-secondary{background:var(--bg-tertiary);color:var(--text-primary);border:1px solid var(--border)}.btn-secondary:hover{background:var(--border)}.btn-sm{padding:.5rem 1rem;font-size:.8rem}.preview-card{position:sticky;top:2rem}.preview-area{background:#fff;border-radius:var(--radius);padding:1.5rem;display:flex;align-items:center;justify-content:center;min-height:300px;margin-bottom:1rem}.preview-area img{max-width:100%;max-height:300px;image-rendering:pixelated}.preview-placeholder{color:#94a3b8;text-align:center;font-size:.9rem}.download-buttons{display:flex;gap:.5rem}.download-buttons .btn{flex:1}.qr-info{margin-top:.75rem;font-size:.8rem;color:var(--text-secondary);text-align:center}.section{margin-bottom:1.5rem}.section-title{font-size:.9rem;font-weight:600;color:var(--text-secondary);margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.05em}.error-msg{background:#ef44441a;border:1px solid rgba(239,68,68,.3);color:var(--error);padding:.75rem;border-radius:var(--radius);font-size:.85rem;margin-bottom:1rem}.loading-spinner{display:inline-block;width:20px;height:20px;border:2px solid rgba(255,255,255,.3);border-radius:50%;border-top-color:#fff;animation:spin .6s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.drop-zone{border:2px dashed var(--border);border-radius:var(--radius-lg);padding:2rem;text-align:center;cursor:pointer;transition:all .2s}.drop-zone:hover{border-color:var(--accent);background:#3b82f60d}.drop-zone p{color:var(--text-secondary);font-size:.9rem}.app-footer{text-align:center;padding:1.5rem;color:var(--text-secondary);font-size:.8rem;border-top:1px solid var(--border);margin-top:2rem}@media(max-width:768px){.main-layout{grid-template-columns:1fr}.preview-card{position:static;order:-1}.tabs{flex-wrap:wrap}.tab-btn{min-width:calc(50% - .25rem)}.form-row,.form-row-3{grid-template-columns:1fr}.app-header h1{font-size:1.5rem}}.logo-upload{display:flex;align-items:center;gap:.75rem}.logo-upload input[type=file]{display:none}.logo-preview{width:40px;height:40px;border-radius:var(--radius);object-fit:contain;background:#fff}.logo-remove{color:var(--error);cursor:pointer;font-size:.8rem;border:none;background:none}
