.file-upload{background:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 6px #0000001a}.upload-zone{border:3px dashed #cbd5e0;border-radius:8px;padding:60px 20px;text-align:center;transition:all .3s ease;background:#f7fafc}.upload-zone.drag-active{border-color:#667eea;background:#eef2ff;transform:scale(1.02)}.upload-content{display:flex;flex-direction:column;align-items:center;gap:15px}.upload-icon{font-size:60px}.upload-zone h3{margin:0;font-size:20px;color:#2d3748}.upload-zone p{margin:0;color:#718096}.upload-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:12px 30px;border-radius:6px;font-weight:600;cursor:pointer;transition:transform .2s}.upload-button:hover{transform:translateY(-2px)}.file-list{margin-top:30px}.file-list h3{margin-bottom:20px;color:#2d3748;font-size:18px}.file-groups{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:20px}.file-group{background:#f7fafc;padding:15px;border-radius:8px;border-left:4px solid #667eea}.file-group h4{margin:0 0 10px;color:#667eea;font-size:14px;text-transform:uppercase;letter-spacing:.5px}.file-group ul{list-style:none;margin:0;padding:0}.file-group li{padding:6px 0;color:#4a5568;font-size:13px;border-bottom:1px solid #e2e8f0}.file-group li:last-child{border-bottom:none}.config-panel{background:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 6px #0000001a}.config-panel h2{margin:0 0 30px;color:#2d3748;font-size:24px}.config-section{margin-bottom:30px}.config-section h3{margin:0 0 15px;color:#667eea;font-size:16px;text-transform:uppercase;letter-spacing:.5px}.checkbox-label{display:flex;align-items:center;gap:10px;padding:10px;cursor:pointer;border-radius:6px;transition:background .2s}.checkbox-label:hover{background:#f7fafc}.checkbox-label input[type=checkbox]{width:18px;height:18px;accent-color:#667eea}.checkbox-label span{color:#4a5568;font-size:14px}.number-label{display:flex;flex-direction:column;gap:10px}.number-label span{color:#4a5568;font-size:14px;font-weight:500}.number-label input[type=number]{width:100px;padding:10px;border:2px solid #e2e8f0;border-radius:6px;font-size:16px;color:#2d3748}.number-label input[type=number]:focus{outline:none;border-color:#667eea}.warning-box{display:flex;gap:15px;background:#fffbeb;border:2px solid #fbbf24;border-radius:8px;padding:20px;margin:30px 0}.warning-icon{font-size:24px;flex-shrink:0}.warning-content{color:#78350f;font-size:14px;line-height:1.6}.warning-content strong{display:block;margin-bottom:5px;color:#92400e}.recommendations-table{margin-top:30px}.recommendations-table h3{margin:0 0 15px;color:#2d3748;font-size:16px}.recommendations-table table{width:100%;border-collapse:collapse;background:#f7fafc;border-radius:8px;overflow:hidden}.recommendations-table th{background:#667eea;color:#fff;padding:12px;text-align:left;font-weight:600;font-size:13px;text-transform:uppercase;letter-spacing:.5px}.recommendations-table td{padding:12px;border-bottom:1px solid #e2e8f0;color:#4a5568;font-size:14px}.recommendations-table tr:last-child td{border-bottom:none}.recommendations-table .success{color:#059669;font-weight:600}.recommendations-table .warning{color:#d97706;font-weight:600}.variation-card{background:#fff;border-radius:12px;padding:25px;box-shadow:0 4px 6px #0000001a;transition:transform .2s,box-shadow .2s}.variation-card:hover{transform:translateY(-4px);box-shadow:0 8px 12px #00000026}.variation-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.variation-header h3{margin:0;color:#2d3748;font-size:20px}.variation-badge{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:6px 12px;border-radius:20px;font-size:12px;font-weight:600}.variation-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin-bottom:20px}.stat{text-align:center;padding:15px;background:#f7fafc;border-radius:8px}.stat-label{font-size:12px;color:#718096;text-transform:uppercase;letter-spacing:.5px;margin-bottom:5px}.stat-value{font-size:24px;font-weight:700;color:#667eea}.download-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px}.download-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:14px 12px;border-radius:8px;font-weight:600;font-size:14px;transition:transform .2s,opacity .2s;white-space:nowrap}.download-button:hover{transform:scale(1.02);opacity:.9}.napoleon-button{background:linear-gradient(135deg,#f093fb,#f5576c)}.napoleon-button:hover{opacity:.85}.app{display:flex;flex-direction:column;min-height:100vh}.app-header{background:#fff;border-radius:12px;padding:40px;margin-bottom:30px;box-shadow:0 4px 6px #0000001a}.header-content{display:flex;align-items:center;gap:25px}.logo{font-size:80px;line-height:1}.header-text h1{margin:0 0 10px;color:#2d3748;font-size:32px;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.header-text p{margin:0;color:#718096;font-size:16px}.app-content{display:flex;flex-direction:column;gap:30px;flex:1}.action-section{background:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 6px #0000001a;display:flex;flex-direction:column;gap:20px}.generate-button{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff;padding:18px 40px;border-radius:8px;font-weight:700;font-size:18px;transition:transform .2s,box-shadow .2s;box-shadow:0 4px 6px #48bb784d}.generate-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 6px 12px #48bb7866}.generate-button:disabled{opacity:.6;cursor:not-allowed}.progress-bar{position:relative;width:100%;height:40px;background:#e2e8f0;border-radius:8px;overflow:hidden}.progress-fill{height:100%;background:linear-gradient(135deg,#667eea,#764ba2);transition:width .3s ease;box-shadow:0 0 10px #667eea80}.progress-text{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);color:#fff;font-weight:700;font-size:16px;text-shadow:0 2px 4px rgba(0,0,0,.3)}.error-message{background:#fed7d7;color:#c53030;padding:15px;border-radius:8px;border:2px solid #fc8181;font-weight:600}.results-section{background:#fff;border-radius:12px;padding:30px;box-shadow:0 4px 6px #0000001a}.results-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.results-header h2{margin:0;color:#2d3748;font-size:28px}.download-all-button{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:14px 30px;border-radius:8px;font-weight:600;font-size:16px;transition:transform .2s}.download-all-button:hover{transform:translateY(-2px)}.results-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:30px}.result-stat{display:flex;flex-direction:column;align-items:center;padding:25px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff}.stat-number{font-size:48px;font-weight:700;line-height:1;margin-bottom:10px}.stat-label{font-size:14px;opacity:.9;text-transform:uppercase;letter-spacing:1px}.variations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:25px}.app-footer{background:#fff;border-radius:12px;padding:20px;margin-top:30px;text-align:center;box-shadow:0 4px 6px #0000001a}.app-footer p{margin:0;color:#718096;font-size:14px}@media (max-width: 768px){.header-content{flex-direction:column;text-align:center}.header-text h1{font-size:24px}.results-stats,.variations-grid{grid-template-columns:1fr}.results-header{flex-direction:column;gap:15px}}*{margin:0;padding:0;box-sizing:border-box}body{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;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;padding:20px}#root{max-width:1400px;margin:0 auto}button{cursor:pointer;border:none;outline:none;font-family:inherit}input[type=checkbox]{cursor:pointer}input[type=number]{font-family:inherit}
