:root{--font-display:"Space Grotesk", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--orange-50:#fff8ed;--orange-100:#ffefd6;--orange-200:#fddcab;--orange-300:#f4ae56;--orange-400:#e8922d;--orange-500:#d47b1a;--orange-600:#b85c0a;--orange-700:#9a4a0c;--orange-800:#7a3b12;--orange-900:#5c2d10;--gray-50:#fafafa;--gray-100:#f4f4f5;--gray-200:#e4e4e7;--gray-300:#d4d4d8;--gray-400:#a1a1aa;--gray-500:#71717a;--gray-600:#52525b;--gray-700:#3f3f46;--gray-800:#27272a;--gray-900:#18181b;--gray-950:#09090b;--emerald-500:#10b981;--sky-500:#0ea5e9;--violet-500:#8b5cf6;--rose-500:#f43f5e;--surface-bg:#0c0a09;--surface-card:#1c1917cc;--surface-card-hover:#292524e6;--surface-elevated:#29252499;--surface-border:#d47b1a24;--surface-border-hover:#d47b1a47;--glow-orange:0 0 60px #d47b1a26;--glow-orange-strong:0 0 80px #d47b1a40;--transition-fast:.15s cubic-bezier(.4, 0, .2, 1);--transition-base:.25s cubic-bezier(.4, 0, .2, 1);--transition-slow:.4s cubic-bezier(.4, 0, .2, 1);--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-size:16px}body{font-family:var(--font-body);background-color:var(--surface-bg);color:var(--gray-100);min-height:100vh;line-height:1.6;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(#d47b1a0f 0%,#0000 70%);width:80%;height:80%;position:fixed;top:-40%;left:-20%}body:after{content:"";pointer-events:none;z-index:0;background:radial-gradient(#f4ae560a 0%,#0000 70%);width:70%;height:70%;position:fixed;bottom:-30%;right:-20%}#root{z-index:1;min-height:100vh;position:relative}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--gray-700);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--gray-600)}:focus-visible{outline:2px solid var(--orange-400);outline-offset:2px;border-radius:var(--radius-sm)}::selection{color:#fff;background:#d47b1a4d}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #d47b1a1f}50%{box-shadow:0 0 40px #d47b1a38}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.animate-fade-in-up{animation:fadeInUp .5s var(--transition-base) both}.animate-fade-in{animation:.4s both fadeIn}.animate-scale-in{animation:.3s both scaleIn}.header{z-index:50;-webkit-backdrop-filter:blur(16px)saturate(1.4);border-bottom:1px solid var(--surface-border);background:#0c0a09bf;position:sticky;top:0}.header-inner{justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;padding:16px 24px;display:flex}.header-brand{align-items:center;gap:14px;display:flex}.header-logo{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--orange-500), var(--orange-600));color:#fff;justify-content:center;align-items:center;width:48px;height:48px;animation:3s ease-in-out infinite pulse-glow;display:flex;box-shadow:0 4px 16px #d47b1a4d}.header-title{font-family:var(--font-display);background:linear-gradient(135deg, var(--orange-300), var(--orange-500));-webkit-text-fill-color:transparent;letter-spacing:-.02em;-webkit-background-clip:text;background-clip:text;font-size:1.5rem;font-weight:700;line-height:1.2}.header-subtitle{color:var(--gray-400);letter-spacing:.01em;font-size:.8rem;font-weight:400}.header-badge{border-radius:var(--radius-full);color:var(--orange-400);letter-spacing:.03em;text-transform:uppercase;background:#d47b1a1a;border:1px solid #d47b1a33;align-items:center;gap:6px;padding:6px 14px;font-size:.75rem;font-weight:600;display:flex}@media (width<=480px){.header-badge{display:none}}.type-selector{animation:.5s both fadeInUp}.section-label{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.1em;color:var(--gray-400);margin-bottom:16px;font-size:.75rem;font-weight:600}.type-grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:12px;display:grid}.type-card{border-radius:var(--radius-lg);background:var(--surface-card);border:1px solid var(--surface-border);cursor:pointer;transition:all var(--transition-base);color:var(--gray-300);font-family:var(--font-body);flex-direction:column;align-items:center;gap:8px;padding:20px 12px 16px;animation:.4s both fadeInUp;display:flex;position:relative;overflow:hidden}.type-card:before{content:"";border-radius:var(--radius-lg);background:radial-gradient(circle at 50% 0%, var(--type-color), transparent 70%);opacity:0;transition:opacity var(--transition-base);position:absolute;inset:0}.type-card:hover{border-color:color-mix(in srgb, var(--type-color) 40%, transparent);transform:translateY(-2px);box-shadow:0 8px 24px #0000004d}.type-card:hover:before{opacity:.08}.type-card--active{border-color:color-mix(in srgb, var(--type-color) 50%, transparent);background:var(--surface-card-hover);box-shadow:0 0 30px color-mix(in srgb, var(--type-color) 15%, transparent)}.type-card--active:before{opacity:.12}.type-card--active .type-card-icon{color:var(--type-color);background:color-mix(in srgb, var(--type-color) 15%, transparent)}.type-card-icon{border-radius:var(--radius-md);background:var(--surface-elevated);width:44px;height:44px;transition:all var(--transition-base);color:var(--gray-400);justify-content:center;align-items:center;display:flex}.type-card:hover .type-card-icon{color:var(--type-color)}.type-card-label{color:var(--gray-100);z-index:1;font-size:.875rem;font-weight:600;position:relative}.type-card-desc{color:var(--gray-500);text-align:center;z-index:1;font-size:.7rem;line-height:1.3;position:relative}@media (width<=640px){.type-grid{grid-template-columns:repeat(3,1fr);gap:8px}.type-card{padding:14px 8px 12px}.type-card-desc{display:none}.type-card-icon{width:38px;height:38px}}.input-panel{animation-delay:.1s}.input-group{margin-bottom:20px}.input-group:last-child{margin-bottom:0}.input-label{color:var(--gray-300);text-transform:uppercase;letter-spacing:.05em;align-items:center;gap:8px;margin-bottom:8px;font-size:.8rem;font-weight:600;display:flex}.input-wrapper{border-radius:var(--radius-md);background:var(--surface-card);border:1px solid var(--surface-border);transition:all var(--transition-base);align-items:stretch;display:flex;overflow:hidden}.input-wrapper:focus-within{border-color:var(--focus-color,var(--orange-500));box-shadow:0 0 0 3px color-mix(in srgb, var(--focus-color,var(--orange-500)) 12%, transparent)}.input-prefix{background:var(--surface-elevated);border-right:1px solid var(--surface-border);color:var(--gray-400);font-size:.8rem;font-family:var(--font-body);white-space:nowrap;-webkit-user-select:all;user-select:all;align-items:center;padding:0 12px;display:flex}.input-field{color:var(--gray-100);font-family:var(--font-body);background:0 0;border:none;outline:none;flex:1;padding:14px 16px;font-size:.95rem;line-height:1.5}.input-field::placeholder{color:var(--gray-600)}.input-field--full{border-radius:var(--radius-md);background:var(--surface-card);border:1px solid var(--surface-border);width:100%;transition:all var(--transition-base)}.input-field--full:focus{border-color:var(--orange-500);box-shadow:0 0 0 3px #d47b1a1f}.input-textarea{resize:vertical;min-height:80px;max-height:200px;line-height:1.6}.color-picker{animation-delay:.15s}.color-group{margin-bottom:16px}.color-group:last-of-type{margin-bottom:20px}.color-group-label{color:var(--gray-500);letter-spacing:.02em;margin-bottom:8px;font-size:.7rem;font-weight:500;display:block}.color-swatches{flex-wrap:wrap;gap:8px;display:flex}.color-swatch{border-radius:var(--radius-sm);cursor:pointer;width:36px;height:36px;transition:all var(--transition-fast);background:0 0;border:2px solid #0000;padding:0;position:relative;overflow:hidden}.color-swatch:hover{transform:scale(1.12);box-shadow:0 4px 12px #0006}.color-swatch--active{box-shadow:0 0 0 2px var(--swatch-color), 0 4px 16px #0000004d;border-color:#fff;transform:scale(1.1)}.swatch-fill{border-radius:calc(var(--radius-sm) - 2px);width:100%;height:100%;display:block}.swatch-check{color:#fff;mix-blend-mode:difference;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.color-custom{border-top:1px solid var(--surface-border);align-items:center;gap:12px;padding-top:12px;display:flex}.color-custom-label{color:var(--gray-400);white-space:nowrap;font-size:.75rem;font-weight:500}.color-custom-input{border-radius:var(--radius-sm);cursor:pointer;background:0 0;border:none;width:36px;height:36px;padding:0}.color-custom-input::-webkit-color-swatch-wrapper{padding:0}.color-custom-input::-webkit-color-swatch{border:2px solid var(--gray-600);border-radius:var(--radius-sm)}.color-custom-hex{font-family:var(--font-body);color:var(--gray-400);text-transform:uppercase;font-size:.8rem;font-weight:500}.qr-preview-section{animation:.5s .2s both fadeInUp}.qr-preview-wrapper{flex-direction:column;align-items:center;gap:20px;display:flex}.qr-card{border-radius:var(--radius-xl);width:100%;max-width:360px;transition:all var(--transition-slow);flex-direction:column;align-items:center;gap:16px;padding:32px 28px;display:flex;position:relative;box-shadow:0 4px 6px #0000000d,0 20px 60px #00000026}.qr-card:hover{transform:translateY(-4px);box-shadow:0 8px 12px #00000014,0 32px 80px #0003}.qr-card-badge{text-transform:uppercase;letter-spacing:.08em;font-size:.7rem;font-weight:600;font-family:var(--font-display);align-items:center;gap:6px;display:flex}.qr-card-headline{font-family:var(--font-display);text-align:center;word-wrap:break-word;max-width:280px;font-size:1.2rem;font-weight:700;line-height:1.3}.qr-code-container{justify-content:center;align-items:center;animation:.3s both scaleIn;display:flex}.qr-placeholder{border-radius:var(--radius-md);opacity:.2;text-align:center;border:2px dashed;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:200px;height:200px;font-size:.8rem;display:flex}.qr-card-link{opacity:.6;word-break:break-all;text-align:center;max-width:100%;font-size:.75rem;font-weight:500;line-height:1.4;font-family:var(--font-body);align-items:center;gap:6px;display:flex}.download-btn{border-radius:var(--radius-md);background:linear-gradient(135deg, var(--orange-500), var(--orange-600));color:#fff;width:100%;max-width:360px;font-family:var(--font-display);cursor:pointer;transition:all var(--transition-base);letter-spacing:.01em;border:none;justify-content:center;align-items:center;gap:10px;padding:16px 24px;font-size:.95rem;font-weight:600;display:flex;position:relative;overflow:hidden}.download-btn:before{content:"";background:linear-gradient(135deg,#0000 40%,#ffffff26 50%,#0000 60%) 0 0/200% 100%;animation:3s ease-in-out infinite shimmer;position:absolute;inset:0}.download-btn:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 30px #d47b1a66}.download-btn:active:not(:disabled){transform:translateY(0)}.download-btn:disabled{opacity:.35;cursor:not-allowed;background:var(--gray-700)}.download-btn:disabled:before{animation:none}.download-hint{color:var(--gray-500);text-align:center;font-size:.7rem}@media (width<=640px){.qr-card{max-width:300px;padding:24px 20px}.qr-card-headline{font-size:1rem}}.app{flex-direction:column;min-height:100vh;display:flex}.main{flex:1;width:100%;max-width:1200px;margin:0 auto;padding:40px 24px}.layout{grid-template-columns:1fr 420px;align-items:start;gap:48px;display:grid}.controls-column{flex-direction:column;gap:32px;display:flex}.preview-column{position:relative}.preview-sticky{position:sticky;top:100px}.footer{text-align:center;color:var(--gray-600);border-top:1px solid var(--surface-border);padding:24px;font-size:.75rem}.footer a{color:var(--orange-400);font-weight:600;text-decoration:none}.footer a:hover{color:var(--orange-300)}@media (width<=900px){.layout{grid-template-columns:1fr;gap:32px}.preview-sticky{position:static}.preview-column{order:-1}.main{padding:24px 16px}}
