.file-upload-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000d9;display:flex;justify-content:center;align-items:center;z-index:10000;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.file-upload-modal{background:linear-gradient(135deg,#0a0e27,#1a1f3a,#0a0e27);border:2px solid #00ffff;border-radius:15px;max-width:600px;width:90%;max-height:90vh;overflow-y:auto;box-shadow:0 0 50px #00ffff4d;animation:modalSlideIn .3s ease-out}.upload-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;background:linear-gradient(45deg,#f0f,#0ff);color:#000;border-top-left-radius:13px;border-top-right-radius:13px}.upload-header h3{margin:0;font-weight:700;font-size:1.3em}.close-upload-btn{background:none;border:none;font-size:24px;font-weight:700;color:#000;cursor:pointer;padding:0;width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.close-upload-btn:hover{background:#0003;transform:rotate(90deg)}.upload-body{padding:25px}.drag-drop-zone{border:3px dashed #00ffff;border-radius:15px;padding:40px 20px;text-align:center;background:linear-gradient(45deg,#ff00ff1a,#00ffff1a);transition:all .3s ease;cursor:pointer;margin-bottom:20px}.drag-drop-zone:hover,.drag-drop-zone.drag-over{border-color:#f0f;background:linear-gradient(45deg,#f0f3,#0ff3);transform:scale(1.02)}.upload-icon{font-size:3em;margin-bottom:10px;animation:bounce 2s infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(-10px)}60%{transform:translateY(-5px)}}.upload-text{font-size:1.2em;color:#0ff;margin:10px 0;font-weight:700}.upload-subtext{color:#f0f;margin:5px 0 15px}.browse-btn{background:linear-gradient(45deg,#f0f,#0ff);color:#000;border:none;padding:12px 25px;border-radius:8px;font-weight:700;cursor:pointer;font-size:1em;transition:all .3s ease}.browse-btn:hover{transform:scale(1.05);box-shadow:0 0 20px #00ffff80}.supported-formats{margin:20px 0}.supported-formats h4{color:#0ff;margin-bottom:10px}.format-tags{display:flex;flex-wrap:wrap;gap:10px}.format-tag{background:linear-gradient(45deg,#ff00ff4d,#00ffff4d);color:#fff;padding:5px 12px;border-radius:20px;font-size:.9em;border:1px solid #00ffff}.upload-progress{margin:20px 0}.progress-bar{background:#0000004d;height:25px;border-radius:12px;overflow:hidden;border:1px solid #00ffff}.progress-fill{background:linear-gradient(45deg,#f0f,#0ff);height:100%;width:0%;transition:width .3s ease;border-radius:12px}.progress-text{text-align:center;color:#0ff;margin-top:10px;font-weight:700}.file-list{margin:20px 0}.file-list h4{color:#f0f;margin-bottom:15px}.file-items{max-height:200px;overflow-y:auto}.file-item{display:flex;justify-content:space-between;align-items:center;background:#00ffff1a;border:1px solid #00ffff;border-radius:8px;padding:10px 15px;margin-bottom:8px;transition:all .3s ease}.file-item:hover{background:#ff00ff1a;border-color:#f0f;transform:translate(5px)}.file-info{display:flex;align-items:center;gap:10px;flex:1}.file-icon{font-size:1.2em}.file-name{color:#0ff;font-weight:700;flex:1}.file-size{color:#f0f;font-size:.9em}.remove-file-btn{background:red;color:#fff;border:none;width:25px;height:25px;border-radius:50%;cursor:pointer;font-weight:700;font-size:16px;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.remove-file-btn:hover{transform:scale(1.1);box-shadow:0 0 10px #ff000080}.upload-actions{display:flex;gap:15px;justify-content:center;margin-top:25px}.upload-actions .btn-primary,.upload-actions .btn-secondary{padding:12px 25px;border-radius:8px;font-weight:700;cursor:pointer;transition:all .3s ease;border:none;font-size:1em}.upload-actions .btn-primary{background:linear-gradient(45deg,#0ff,#f0f);color:#000}.upload-actions .btn-secondary{background:#ffffff1a;color:#0ff;border:2px solid #00ffff}.upload-actions .btn-primary:hover,.upload-actions .btn-secondary:hover{transform:scale(1.05);box-shadow:0 0 20px #00ffff4d}.upload-actions .btn-primary:disabled{background:#64646480;color:#666;cursor:not-allowed;transform:none;box-shadow:none}.success-message{text-align:center;margin-bottom:30px}.success-icon{font-size:4em;margin-bottom:15px;animation:pulse 2s infinite}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.success-message h4{color:#0ff;margin-bottom:10px}.success-message p{color:#f0f}.chart-options{margin:25px 0}.chart-options h4{color:#0ff;margin-bottom:15px}.recommended-charts{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:15px}.chart-option-btn{background:linear-gradient(135deg,#0ff3,#f0f3);border:2px solid #00ffff;border-radius:10px;padding:15px;cursor:pointer;transition:all .3s ease;display:flex;flex-direction:column;align-items:center;gap:8px;color:#fff}.chart-option-btn:hover{transform:translateY(-3px);box-shadow:0 10px 25px #00ffff4d;border-color:#f0f}.chart-option-btn .chart-icon{font-size:2em}.next-steps{display:flex;gap:15px;justify-content:center;margin-top:30px}.next-steps .btn-primary,.next-steps .btn-secondary{padding:15px 30px;border-radius:10px;font-weight:700;cursor:pointer;transition:all .3s ease;border:none;font-size:1em}.next-steps .btn-primary{background:linear-gradient(45deg,#f0f,#0ff);color:#000}.next-steps .btn-secondary{background:#ffffff1a;color:#f0f;border:2px solid #ff00ff}.next-steps .btn-primary:hover,.next-steps .btn-secondary:hover{transform:scale(1.08);box-shadow:0 0 30px #f0f6}@keyframes modalSlideIn{0%{opacity:0;transform:scale(.8) translateY(-50px)}to{opacity:1;transform:scale(1) translateY(0)}}@media (max-width: 768px){.file-upload-modal{width:95%;margin:10px}.recommended-charts{grid-template-columns:repeat(2,1fr)}.next-steps,.upload-actions{flex-direction:column;align-items:center}}
