:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;place-items:center}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}.App{height:100vh;background:linear-gradient(135deg,rgb(255,200,150) 0%,rgb(255,150,120) 100%);padding:0;position:relative;overflow:hidden;display:flex;flex-direction:column}.App:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at 20% 80%,rgba(255,200,150,.3) 0%,transparent 50%),radial-gradient(circle at 80% 20%,rgba(255,150,120,.3) 0%,transparent 50%),radial-gradient(circle at 40% 40%,rgba(255,220,180,.2) 0%,transparent 50%);pointer-events:none}.App-header{text-align:center;margin-bottom:1rem;color:#fff;position:relative;z-index:1;flex-shrink:0;padding:.5rem 0}.App-header h1{font-size:2.5rem;margin-bottom:.25rem;font-weight:800;text-shadow:0 4px 8px rgba(0,0,0,.3);background:linear-gradient(45deg,#fff,#f0f0f0);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}.App-header p{font-size:1rem;opacity:.95;margin:0;font-weight:300;text-shadow:0 2px 4px rgba(0,0,0,.2)}main{flex:1;width:100%;padding:0;margin:0;position:relative;z-index:1;display:flex;flex-direction:column;overflow:hidden}*{box-sizing:border-box;margin:0;padding:0}html{height:100vh;overflow:hidden;margin:0;padding:0}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;height:100vh;overflow:hidden;width:100vw}#root{height:100vh;width:100vw;margin:0;padding:0;display:flex;flex-direction:column;overflow:hidden}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,rgb(255,200,150),rgb(255,150,120));border-radius:4px}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,rgb(255,150,120),rgb(245,130,100))}@media (max-width: 768px){.App{padding:.25rem 0}.App-header{margin-bottom:.75rem;padding:.25rem 0}.App-header h1{font-size:2rem;margin-bottom:.25rem}.App-header p{font-size:.9rem}main{padding:0 .5rem}}@media (max-width: 480px){.App-header h1{font-size:1.8rem}.App-header p{font-size:.85rem}}.badge-maker{display:flex;gap:3rem;width:100%;margin:0;padding:1rem 3rem;height:100%;align-items:stretch;overflow:hidden;position:relative;justify-content:center}.controls{flex:0 0 600px;min-width:600px;max-width:600px;background:white;padding:2rem;border-radius:16px;box-shadow:0 8px 32px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);display:flex;flex-direction:column;justify-content:flex-start;height:100%;overflow-y:auto}.controls::-webkit-scrollbar{width:6px}.controls::-webkit-scrollbar-track{background:rgba(0,0,0,.05);border-radius:3px}.controls::-webkit-scrollbar-thumb{background:linear-gradient(135deg,rgb(255,200,150),rgb(255,150,120));border-radius:3px}.controls::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,rgb(255,150,120),rgb(245,130,100))}.export-btn{position:absolute;top:1.5rem;right:1.5rem;width:auto;padding:.8rem 1.5rem;background:linear-gradient(135deg,#3498db,#2980b9);color:#fff;border:none;border-radius:12px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease;margin-top:0;box-shadow:0 4px 15px #3498db4d;z-index:10}.export-btn:hover{background:linear-gradient(135deg,#2980b9,#1f5f8b);transform:translateY(-2px);box-shadow:0 6px 20px #3498db66}.export-btn:active{transform:translateY(0)}.control-group{margin-bottom:1.2rem}.control-group:last-of-type{margin-bottom:1rem}.control-group label{display:block;margin-bottom:.6rem;font-weight:600;color:#2c3e50;font-size:.95rem}.preset-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(90px,1fr));gap:.6rem;margin-top:.4rem}.preset-btn{padding:.7rem .5rem;border:2px solid transparent;border-radius:8px;color:#fff;font-weight:600;font-size:.8rem;cursor:pointer;transition:all .3s ease;background:#ecf0f1;color:#2c3e50;text-align:center;min-height:38px;display:flex;align-items:center;justify-content:center}.preset-btn:hover{transform:translateY(-1px);box-shadow:0 4px 12px #00000026}.preset-btn.active{border-color:#3498db;box-shadow:0 0 0 3px #3498db33;transform:translateY(-1px)}.preset-btn:not(.active){background:#ecf0f1;color:#2c3e50}.gradient-preset{color:#fff!important;font-weight:700;text-shadow:0 1px 2px rgba(0,0,0,.3)}.background-type-controls{display:flex;gap:1.5rem;margin-top:.4rem}.radio-label{display:flex;align-items:center;gap:.5rem;cursor:pointer;font-weight:500;color:#2c3e50;font-size:1rem}.radio-label input[type=radio]{margin:0;cursor:pointer;transform:scale(1.2)}.select-input{width:100%;padding:.7rem;border:2px solid #ecf0f1;border-radius:8px;font-size:.95rem;background:white;cursor:pointer;transition:border-color .3s ease}.select-input:focus{outline:none;border-color:#3498db}.gradient-colors{display:flex;gap:1.5rem;margin-top:.4rem;justify-content:space-around}.color-input-group{display:flex;flex-direction:column;align-items:center;gap:.5rem;flex:1}.color-input-group label{font-size:.9rem;color:#666;margin:0}.file-input{width:100%;padding:.9rem;border:2px dashed #3498db;border-radius:12px;background:#f8f9fa;cursor:pointer;transition:all .3s ease;font-size:.9rem}.file-input:hover{border-color:#2980b9;background:#ecf0f1;transform:translateY(-1px)}.color-input{width:80px;height:50px;border:3px solid #ecf0f1;border-radius:8px;cursor:pointer;background:none;transition:transform .2s ease}.color-input:hover{transform:scale(1.05)}.text-input{width:100%;padding:.9rem;border:2px solid #ecf0f1;border-radius:12px;font-size:.95rem;transition:all .3s ease;background:#f8f9fa}.text-input:focus{outline:none;border-color:#3498db;background:white;box-shadow:0 0 0 3px #3498db1a}.range-input{width:100%;margin-top:.75rem;height:6px;border-radius:3px;background:#ecf0f1;outline:none;-webkit-appearance:none}.range-input::-webkit-slider-thumb{-webkit-appearance:none;-moz-appearance:none;appearance:none;width:20px;height:20px;border-radius:50%;background:#3498db;cursor:pointer;box-shadow:0 2px 6px #0003}.range-input::-moz-range-thumb{width:20px;height:20px;border-radius:50%;background:#3498db;cursor:pointer;border:none;box-shadow:0 2px 6px #0003}.preview{flex:1;min-width:700px;display:flex;flex-direction:column;align-items:center;background:white;padding:2.5rem;border-radius:16px;box-shadow:0 8px 32px #0000001a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.2);height:100%;overflow:hidden;position:relative}.preview h3{margin-bottom:2rem;color:#2c3e50;font-size:2rem;font-weight:700;text-align:center;flex-shrink:0}.badge-container{display:flex;justify-content:center;align-items:center;flex:1;width:100%;padding:3rem;background:linear-gradient(45deg,#f8f9fa 25%,transparent 25%),linear-gradient(-45deg,#f8f9fa 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#f8f9fa 75%),linear-gradient(-45deg,transparent 75%,#f8f9fa 75%);background-size:20px 20px;background-position:0 0,0 10px,10px -10px,-10px 0px;border-radius:16px;border:2px solid #ecf0f1;position:relative;min-height:250px}.badge-container:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:rgba(255,255,255,.8);border-radius:16px;z-index:1}.badge{display:flex;align-items:center;gap:0;padding:0;border-radius:50px;font-weight:600;font-size:18px;white-space:nowrap;box-shadow:0 4px 20px #00000026;transition:all .3s ease;position:relative;z-index:2;min-width:180px;width:auto;justify-content:flex-start;overflow:hidden;height:50px}.badge:hover{transform:scale(1.05);box-shadow:0 6px 25px #0003}.badge-icon-container{width:50px;height:50px;background:transparent;border-radius:50%;flex-shrink:0;margin-right:0;box-shadow:0 2px 8px #0000001a;overflow:hidden}.badge-text{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-weight:700;padding:0 8px 0 5px;flex:1;text-align:left;font-size:32px;display:flex;align-items:center;justify-content:flex-start;height:100%;line-height:1}@media (max-width: 1400px){.badge-maker{padding:1rem 2rem;gap:2rem}.controls{flex:0 0 550px;min-width:550px;max-width:550px;padding:2rem}.preview{min-width:600px;padding:2rem}.export-btn{top:1rem;right:1rem;padding:.7rem 1.2rem;font-size:.9rem}}@media (max-width: 1200px){.badge-maker{padding:1rem;gap:1.5rem}.controls{flex:0 0 500px;min-width:500px;max-width:500px;padding:2rem}.preview{min-width:500px;padding:2rem}}@media (max-width: 768px){.badge-maker{flex-direction:column;padding:.5rem;gap:1rem;height:auto;overflow-y:auto;justify-content:flex-start}.controls{order:2;padding:1rem;max-width:none;min-width:auto;height:auto;overflow-y:visible;flex:none}.preview{order:1;padding:1rem;min-height:300px;height:auto;min-width:auto}.badge-container{min-height:150px;padding:1.5rem}.preview h3{font-size:1.3rem;margin-bottom:1rem}.preset-grid{grid-template-columns:repeat(auto-fit,minmax(60px,1fr));gap:.4rem}.preset-btn{font-size:.75rem;padding:.5rem .3rem;min-height:30px}.badge{font-size:14px;min-width:120px;height:40px;width:auto}.badge-icon-container{width:40px;height:40px}.badge-text{padding:0 5px 0 2px;font-size:20px;display:flex;align-items:center;justify-content:flex-start;text-align:left;height:100%;line-height:1}.control-group{margin-bottom:1rem}.background-type-controls,.gradient-colors{gap:1.5rem}.export-btn{position:static;width:100%;margin-top:1rem;padding:1rem;font-size:1rem}}@media (max-width: 480px){.badge-maker{padding:.25rem}.controls,.preview{padding:.8rem}.badge{font-size:14px;min-width:140px;height:55px}.badge-icon-container{width:55px;height:55px}.badge-text{padding:0 15px;font-size:14px;display:flex;align-items:center;justify-content:center;height:100%;line-height:1}.preset-grid{grid-template-columns:repeat(4,1fr)}.badge-container{padding:1rem}.control-group{margin-bottom:.8rem}}
