body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}.user-profile-header{transition:all .3s ease}.user-profile-header:hover{background-color:#0000000d!important}.login-container{animation:fadeIn .5s ease-out}body{background:linear-gradient(135deg,#667eea,#764ba2);color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;line-height:1.6}.App,body{min-height:100vh}.App{display:flex;flex-direction:column}.App-header{background:#fff;box-shadow:0 4px 20px #0000001a;padding:20px 40px;position:-webkit-sticky;position:sticky;top:0;z-index:1000}.header-content{margin:0 auto;max-width:1400px;width:100%}.header-logo-section{grid-gap:20px;align-items:center;display:grid;gap:20px;grid-template-columns:1fr auto 1fr;margin-bottom:15px;padding:0 40px;position:relative}.company-logo{height:60px;justify-self:start;object-fit:contain;width:auto}.App-header h1{color:#2c3e50;font-size:28px;font-weight:600;margin-bottom:0;text-align:center;white-space:nowrap}.progress-steps{display:flex;gap:30px;margin-top:20px}.progress-steps,.step{justify-content:center}.step{align-items:center;background:#f5f5f5;border-radius:25px;color:#888;font-size:14px;font-weight:500;min-width:120px;padding:10px 20px;position:relative;transition:all .3s ease}.step:not(:last-child):after{background:#ddd;content:"";height:2px;position:absolute;right:-30px;width:20px}.step.active{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 4px 15px #667eea66;color:#fff;transform:translateY(-2px)}.step.active:after{background:#667eea}.App-main{flex:1 1;margin:0 auto;max-width:1400px;padding:30px 40px;width:100%}.error-banner{align-items:center;animation:slideDown .3s ease-out;background:linear-gradient(135deg,#ff6b6b,#c44569);border-radius:8px;color:#fff;display:flex;justify-content:space-between;margin-bottom:30px;padding:15px 20px}@keyframes slideDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.error-icon{font-size:18px;margin-right:10px}.error-close{background:none;border:none;color:#fff;cursor:pointer;font-size:24px;line-height:1;padding:0 5px}.upload-screen{animation:fadeIn .5s ease-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.upload-card{background:#fff;border-radius:15px;box-shadow:0 10px 40px #0000001a;margin:0 auto;max-width:1400px;padding:40px 60px}.upload-card h2{color:#2c3e50;font-size:24px;text-align:center}.project-name-input,.upload-card h2{margin-bottom:30px}.project-name-input label{color:#555;display:block;font-weight:500;margin-bottom:8px}.project-name-input input{border:2px solid #e0e0e0;border-radius:8px;font-size:16px;padding:12px 15px;transition:border-color .3s;width:100%}.project-name-input input:focus{border-color:#667eea;outline:none}.file-upload-section{margin-bottom:30px}.upload-area{background:#fafafa;border:3px dashed #ddd;border-radius:10px;padding:50px 20px;text-align:center;transition:all .3s}.upload-area:hover{background:#f0f4ff;border-color:#667eea}.file-upload-label{cursor:pointer;display:block}.upload-icon{color:#667eea;font-size:48px;margin-bottom:15px}.upload-text{color:#333;font-size:18px;font-weight:500;margin-bottom:8px}.upload-subtext{color:#888;font-size:14px}.file-input{display:none}.loading-indicator{align-items:center;background:#f8f9fa;border-radius:10px;display:flex;flex-direction:column;justify-content:center;margin:20px 0;padding:30px}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:40px;margin-bottom:15px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.file-analysis{animation:slideUp .3s ease-out;margin-top:30px}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.file-analysis h3{color:#2c3e50;font-size:20px;margin-bottom:20px}.file-stats{display:flex;gap:30px;margin-bottom:25px}.stat{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;flex-direction:column;min-width:120px;padding:15px 25px}.stat-label{font-size:14px;margin-bottom:5px}.stat-value{color:#667eea;font-size:24px;font-weight:600}.columns-list{margin:20px 0}.column-item{margin-bottom:15px}.column-checkbox{align-items:flex-start;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;padding:15px;transition:all .3s}.column-checkbox:hover{background:#f8f9fa;border-color:#667eea}.column-checkbox input{margin-right:15px;margin-top:3px;transform:scale(1.2)}.column-info{flex:1 1}.column-name{color:#333;font-weight:500;margin-bottom:8px}.column-details{display:flex;font-size:14px;gap:20px;margin-bottom:8px}.column-type.text{color:#4caf50;font-weight:500}.column-type.numeric{color:#2196f3;font-weight:500}.column-samples{color:#666;font-size:13px;font-style:italic}.selected-summary{background:#e8f5e9;border-radius:8px;color:#2e7d32;font-weight:500;margin-top:20px;padding:12px 20px}.action-buttons{margin-top:40px}.action-buttons,.primary-button{display:flex;justify-content:center}.primary-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:16px;font-weight:600;gap:10px;padding:15px 40px;transition:all .3s}.primary-button:hover:not(:disabled){box-shadow:0 10px 30px #667eea66;transform:translateY(-2px)}.primary-button:disabled{cursor:not-allowed;opacity:.5}.secondary-button{background:#f5f5f5;border:2px solid #ddd;border-radius:8px;color:#666;cursor:pointer;font-size:16px;font-weight:500;padding:15px 30px;transition:all .3s}.secondary-button:hover{background:#e0e0e0;border-color:#bbb}.clustering-screen{animation:fadeIn .5s ease-out;margin:0 auto;max-width:1400px}.clustering-header{background:#fff;border-radius:10px;box-shadow:0 4px 15px #0000000d;margin-bottom:30px;padding:25px}.clustering-header h2{color:#2c3e50;margin-bottom:20px}.controls{justify-content:space-between}.cluster-control,.controls{align-items:center;display:flex}.cluster-control{gap:15px}.cluster-control label{color:#555;font-weight:500}.cluster-control input{border:2px solid #ddd;border-radius:6px;font-size:16px;padding:10px;text-align:center;width:80px}.cluster-control input:focus{border-color:#667eea;outline:none}.cluster-control button{background:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;font-weight:500;padding:10px 20px}.cluster-control button:hover:not(:disabled){background:#45a049}.cluster-control button:disabled{cursor:not-allowed;opacity:.5}.loading-overlay{align-items:center;background:#ffffffe6;bottom:0;display:flex;flex-direction:column;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:1000}.spinner-large{animation:spin 1s linear infinite;border:5px solid #f3f3f3;border-radius:50%;border-top-color:#667eea;height:60px;margin-bottom:20px;width:60px}.clusters-container{margin-bottom:30px}.clusters-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.cluster-card{background:#fff;border:2px solid #0000;border-radius:10px;box-shadow:0 4px 15px #0000000d;cursor:pointer;padding:20px;transition:all .3s}.cluster-card:hover{box-shadow:0 10px 30px #0000001a;transform:translateY(-5px)}.cluster-card.selected{background:#f8f9ff;border-color:#667eea}.cluster-header{align-items:center;border-bottom:1px solid #eee;display:flex;justify-content:space-between;margin-bottom:15px;padding-bottom:10px}.cluster-id{color:#2c3e50;font-size:18px;font-weight:600}.cluster-size{background:#f0f0f0;border-radius:20px;color:#666;font-size:14px;padding:4px 10px}.cluster-suggested-name{color:#667eea;font-size:20px;font-weight:500;margin-bottom:15px;text-align:center}.cluster-top-words{margin-bottom:15px}.top-words-label{color:#666;font-size:14px;margin-bottom:8px}.top-words-list{display:flex;flex-wrap:wrap;gap:8px}.word-tag{background:#e8f5e9;border-radius:15px;color:#2e7d32;font-size:12px;font-weight:500;padding:4px 10px}.cluster-details{border-top:1px solid #eee;margin-top:20px;padding-top:20px}.cluster-details h4{color:#555;font-size:16px;margin-bottom:10px}.examples-list{list-style:none;max-height:200px;overflow-y:auto}.example-item{background:#f8f9fa;border-left:3px solid #ddd;border-radius:6px;color:#555;font-size:14px;margin-bottom:8px;padding:8px 12px}.clustering-summary{background:#fff;border-radius:10px;box-shadow:0 4px 15px #0000000d;margin-bottom:30px;padding:25px}.summary-stats{display:flex;gap:50px;justify-content:center}.summary-stats .stat{align-items:center;display:flex;flex-direction:column}.summary-stats .stat-value{color:#667eea;font-size:32px;font-weight:700;margin-bottom:5px}.summary-stats .stat-label{color:#666;font-size:16px}.editing-screen{animation:fadeIn .5s ease-out;margin:0 auto;max-width:1400px}.editing-header h2{color:#2c3e50;margin-bottom:10px}.editing-header .subtitle{color:#333;font-size:16px;font-weight:500;margin-bottom:30px}.editing-layout{grid-gap:20px;display:grid;gap:20px;grid-template-columns:280px 1fr 320px;margin-bottom:30px}.categories-sidebar{background:#fff;border-radius:10px;box-shadow:0 4px 15px #0000000d;overflow:visible;padding:20px}.add-category-form{align-items:stretch;display:flex;gap:10px;margin-bottom:20px}.add-category-form input{border:2px solid #e0e0e0;border-radius:6px;flex:1 1;font-size:14px;min-width:0;padding:10px 15px}.add-category-form input:focus{border-color:#667eea;outline:none}.add-category-form .add-button{background:#5cb85c;border:none;border-radius:6px;color:#fff;cursor:pointer;flex-shrink:0;font-size:14px;font-weight:500;padding:10px 20px;white-space:nowrap}.add-category-form .add-button:hover{background:#4cae4c}.categories-list{max-height:600px;overflow-y:auto}.category-item{border-bottom:1px solid #f0f0f0;border-left:4px solid #0000;cursor:pointer;padding:15px;transition:all .2s}.category-item:hover{background:#f8f9fa}.category-item.active{background:#f0f7ff;border-left-color:#2196f3}.category-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:8px}.category-name{color:#333;font-size:15px}.delete-category-btn{align-items:center;background:none;border:none;color:#f44;cursor:pointer;display:flex;font-size:20px;height:24px;justify-content:center;opacity:.6;padding:0;transition:opacity .2s;width:24px}.delete-category-btn:hover{opacity:1}.category-meta{color:#888;display:flex;font-size:12px;gap:15px}.category-editor{background:#fff;border-radius:10px;box-shadow:0 4px 15px #0000000d;max-height:800px;overflow-y:auto;padding:25px}.editor-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;gap:15px;margin-bottom:25px;padding-bottom:20px}.editor-header h3{color:#2c3e50;flex:1 1;margin:0}.category-color{border:2px solid #fff;border-radius:6px;box-shadow:0 2px 5px #0000001a;height:24px;width:24px}.editor-section{margin-bottom:25px}.editor-section label{color:#333;display:block;font-size:15px;font-weight:500;margin-bottom:10px}.category-name-input{border:2px solid #ddd;border-radius:8px;font-size:16px;padding:12px 15px;transition:border-color .3s;width:100%}.category-name-input:focus{border-color:#667eea;outline:none}textarea{border:2px solid #ddd;border-radius:8px;font-family:inherit;font-size:14px;min-height:80px;padding:12px 15px;resize:vertical;width:100%}textarea:focus{border-color:#667eea;outline:none}.keywords-input-container{margin-top:10px}.keyword-input{border:2px solid #ddd;border-radius:8px;font-size:14px;margin-bottom:15px;padding:10px 15px;width:100%}.keyword-input:focus{border-color:#667eea;outline:none}.keywords-list{display:flex;flex-wrap:wrap;gap:10px}.keyword-tag{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;font-size:13px;font-weight:500;gap:5px;padding:6px 12px}.keyword-tag,.remove-keyword-btn{align-items:center;color:#fff;display:flex}.remove-keyword-btn{background:#fff3;border:none;border-radius:50%;cursor:pointer;font-size:12px;height:18px;justify-content:center;padding:0;width:18px}.remove-keyword-btn:hover{background:#ffffff4d}.clusters-selection{border:2px solid #f0f0f0;border-radius:8px;max-height:300px;overflow-y:auto;padding:10px}.cluster-selector{border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;margin-bottom:10px;padding:12px;transition:all .3s}.cluster-selector:hover{background:#f8f9fa;border-color:#bbb}.cluster-selector.selected{background:#f0f9f0;border-color:#4caf50}.cluster-selector-header{align-items:center;display:flex;gap:10px;margin-bottom:8px}.selector-checkbox{align-items:center;background:#fff;border:2px solid #ddd;border-radius:4px;color:#fff;display:flex;font-size:12px;height:20px;justify-content:center;width:20px}.cluster-selector.selected .selector-checkbox{background:#4caf50;border-color:#4caf50}.selector-name{color:#333;flex:1 1;font-weight:500}.selector-size{background:#f0f0f0;border-radius:12px;color:#666;display:inline-block;font-size:12px;margin-bottom:8px;padding:2px 8px}.selector-keywords{display:flex;flex-wrap:wrap;gap:5px}.selector-keyword{background:#f5f5f5;border-radius:10px;color:#666;font-size:11px;padding:2px 6px}.merge-categories{margin-top:10px}.merge-select{background:#fff;border:2px solid #ddd;border-radius:8px;cursor:pointer;font-size:14px;padding:10px 15px;width:100%}.merge-select:focus{border-color:#667eea;outline:none}.no-category-selected{align-items:center;display:flex;height:400px;justify-content:center}.empty-state{color:#888;text-align:center}.empty-icon{font-size:60px;margin-bottom:20px;opacity:.5}.empty-state h3{color:#666;font-size:20px;margin-bottom:10px}.empty-state p{font-size:14px}.preview-sidebar{background:#fff;border-radius:10px;box-shadow:0 4px 15px #0000000d;max-height:800px;overflow-y:auto;padding:20px}.preview-sidebar h3{color:#2c3e50;font-size:18px;margin-bottom:20px}.preview-loading{align-items:center;color:#888;display:flex;flex-direction:column;justify-content:center;padding:40px 20px}.preview-stats{display:flex;gap:20px;margin-bottom:25px}.preview-stat{background:#f8f9fa;border-radius:8px;flex:1 1;padding:15px;text-align:center}.preview-stat .stat-value{color:#667eea;font-size:28px;font-weight:700;margin-bottom:5px}.preview-stat .stat-label{color:#666;font-size:14px}.preview-examples{margin-top:20px}.preview-examples h4{color:#555;font-size:16px;margin-bottom:15px}.preview-example{background:#f8f9fa;border-left:4px solid #ddd;border-radius:8px;margin-bottom:15px;padding:15px}.example-text{color:#333;font-size:14px;line-height:1.5;margin-bottom:10px}.example-meta{display:flex;font-size:12px;gap:10px}.cluster-badge{background:#e3f2fd;color:#1976d2}.category-badge,.cluster-badge{border-radius:12px;padding:3px 8px}.category-badge{color:#fff;font-weight:500}.preview-empty{color:#888;flex-direction:column;height:300px;justify-content:center}.editing-footer,.preview-empty{align-items:center;display:flex}.editing-footer{background:#fff;border-radius:10px;box-shadow:0 4px 15px #0000000d;justify-content:space-between;padding:25px}.categories-summary{color:#666;font-size:14px;font-weight:500}.export-screen{animation:fadeIn .5s ease-out;margin:0 auto;max-width:1400px}.export-header h2{color:#2c3e50;margin-bottom:10px}.export-header .subtitle{color:#333;font-size:16px;font-weight:500;margin-bottom:30px}.export-content{grid-gap:30px;display:grid;gap:30px;grid-template-columns:1fr 400px;margin-bottom:30px}.stats-visualization{display:flex;flex-direction:column;gap:20px}.project-summary-card,.stats-card,.visualization-card{background:#fff;border-radius:10px;box-shadow:0 4px 15px #0000000d;padding:25px}.project-summary-card h3,.stats-card h3,.visualization-card h3{color:#2c3e50;font-size:18px;margin-bottom:20px}.project-info{display:flex;flex-direction:column;gap:12px}.info-row{align-items:center;border-bottom:1px solid #f0f0f0;display:flex;justify-content:space-between;padding:10px 0}.info-row:last-child{border-bottom:none}.info-label{color:#666;font-size:14px}.info-value{color:#333;font-weight:500}.stats-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:20px}.copy-summary-btn{align-items:center;background:#4caf50;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:13px;font-weight:500;gap:5px;padding:8px 15px}.copy-summary-btn:hover{background:#45a049}.stats-grid{grid-gap:15px;display:grid;gap:15px;grid-template-columns:repeat(2,1fr);margin-bottom:25px}.stat-item{background:#f8f9fa;border-radius:8px;padding:15px;text-align:center}.stat-number{color:#667eea;font-size:28px;font-weight:700;margin-bottom:5px}.stat-label{align-items:center;color:#666;display:flex;flex-direction:column;font-size:13px;gap:3px}.stat-label strong{color:#333;font-size:14px;font-weight:600}.stat-label .stat-hint{color:#999;font-size:11px;font-style:italic}.distribution-chart h4{color:#555;font-size:16px;margin-bottom:15px}.distribution-bars{display:flex;flex-direction:column;gap:12px}.distribution-bar-container{align-items:center;display:flex;gap:15px}.bar-label{align-items:center;color:#333;display:flex;flex:0 0 150px;font-size:14px;gap:8px}.color-indicator{border-radius:3px;height:12px;width:12px}.bar-wrapper{align-items:center;display:flex;flex:1 1;gap:10px}.distribution-bar{border-radius:10px;height:20px;transition:width .5s ease-out}.bar-value{color:#666;flex:0 0 80px;font-size:12px;font-weight:500;text-align:right}.viz-header{justify-content:space-between;margin-bottom:15px}.download-viz-btn,.viz-header{align-items:center;display:flex}.download-viz-btn{background:#2196f3;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;gap:5px;padding:8px 15px}.download-viz-btn:hover{background:#1976d2}.viz-preview{align-items:center;background:#f8f9fa;border-radius:8px;display:flex;height:300px;justify-content:center;overflow:hidden}.viz-image{max-height:100%;max-width:100%;object-fit:contain}.viz-placeholder{color:#888;font-size:14px}.next-steps-card,.settings-card{background:#fff;border-radius:10px;box-shadow:0 4px 15px #0000000d;margin-bottom:20px;padding:25px}.settings-card h3{color:#2c3e50;font-size:20px;margin-bottom:25px}.setting-group{margin-bottom:30px}.setting-label{color:#333;display:block;font-size:16px;font-weight:500;margin-bottom:15px}.format-options{display:flex;flex-direction:column;gap:15px}.format-option{align-items:center;border:2px solid #e0e0e0;border-radius:8px;cursor:pointer;display:flex;gap:15px;padding:15px;transition:all .3s}.format-option:hover{background:#f8f9fa;border-color:#bbb}.format-option input{margin:0}.option-content{align-items:center;display:flex;flex:1 1;gap:15px}.option-icon{color:#667eea;font-size:24px}.option-text{flex:1 1}.option-title{color:#333;font-weight:500;margin-bottom:5px}.option-description{color:#666;font-size:13px;line-height:1.4}.format-option input:checked+.option-content .option-icon{color:#4caf50}.format-option input:checked+.option-content{background:#f0f9f0;border-color:#4caf50}.checkbox-option{align-items:flex-start;cursor:pointer;display:flex;margin-bottom:15px}.checkbox-option input{margin-right:12px;margin-top:3px}.checkbox-label{color:#333;flex:1 1;font-size:14px}.option-hint{color:#888;display:block;font-size:12px;margin-top:4px}.data-preview{border:2px solid #f0f0f0;border-radius:8px;overflow:hidden}.preview-table{overflow-x:auto}.preview-table table{border-collapse:collapse;width:100%}.preview-table th{background:#f8f9fa;border-bottom:2px solid #e0e0e0;color:#333;font-size:13px;font-weight:500;padding:12px 15px;text-align:left}.preview-table td{border-bottom:1px solid #f0f0f0;font-size:13px;padding:12px 15px}.text-preview{word-wrap:break-word;color:#555;line-height:1.4;max-width:400px}.cluster-id{color:#667eea;font-weight:500}.category-name{background:#e8f5e9;border-radius:12px;color:#2e7d32;font-size:12px;font-weight:500;padding:3px 8px}.export-actions{margin-top:30px}.export-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:10px;justify-content:center;padding:15px 30px;transition:all .3s;width:100%}.export-button:hover:not(:disabled){box-shadow:0 10px 30px #667eea66;transform:translateY(-2px)}.export-button:disabled{cursor:not-allowed;opacity:.5}.export-icon{font-size:18px}.export-hint{color:#888;font-size:12px;margin-top:10px;text-align:center}.next-steps{display:flex;flex-direction:column;gap:20px}.step{background:#f8f9fa;border-left:4px solid #ddd;border-radius:8px;display:flex;gap:15px;padding:15px}.step-icon{color:#667eea;font-size:24px}.step-content{flex:1 1}.step-title{color:#333;font-weight:500;margin-bottom:5px}.step-description{color:#666;font-size:13px;margin-bottom:10px}.step-action{background:#667eea;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:13px;font-weight:500;padding:8px 16px}.step-action.secondary{background:#f5f5f5;border:1px solid #ddd;color:#666}.step-action:hover{opacity:.9}.export-footer{background:#fff;border-radius:10px;box-shadow:0 4px 15px #0000000d;margin-top:20px;padding:30px}.completion-message{align-items:center;background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border-radius:10px;display:flex;gap:20px;padding:20px}.completion-icon{color:#667eea;font-size:48px}.completion-text h3{color:#2c3e50;font-size:22px;margin-bottom:10px}.completion-text p{color:#666;font-size:15px;line-height:1.5}.App-footer{background:#2c3e50;color:#fff;margin-top:auto;padding:20px 40px}.App-footer p{margin-bottom:15px;opacity:.8;text-align:center}.footer-links{display:flex;gap:20px;justify-content:center}.footer-links button{background:#ffffff1a;border:1px solid #fff3;border-radius:20px;color:#fff;cursor:pointer;font-size:14px;padding:8px 20px;transition:all .3s}.footer-links button:hover{background:#fff3}@media (max-width:1400px){.editing-layout{grid-template-rows:auto auto auto}.editing-layout,.export-content{grid-template-columns:1fr}}@media (max-width:768px){.App-header{padding:15px 20px}.header-logo-section{display:flex;flex-direction:column;gap:10px;margin-bottom:10px;padding:0 10px}.company-logo{height:40px}.App-header h1{font-size:18px;line-height:1.3;white-space:normal}.progress-steps{flex-wrap:wrap;gap:10px}.step{font-size:12px;min-width:100px;padding:8px 15px}.step:not(:last-child):after{display:none}.App-main{padding:15px 20px}.category-editor,.clustering-header,.preview-sidebar,.project-summary-card,.settings-card,.upload-card{padding:20px}.header-logo-section{padding:0 20px}.clusters-grid{grid-template-columns:1fr}.summary-stats{flex-direction:column;gap:20px}.action-buttons{flex-direction:column;gap:15px}.primary-button,.secondary-button{width:100%}.completion-message{flex-direction:column;text-align:center}.footer-links{align-items:center;flex-direction:column}.App-footer p{font-size:14px}}@media (max-width:480px){.controls,.file-stats{flex-direction:column;gap:15px}.controls{align-items:stretch}.cluster-control{flex-direction:column;gap:10px}.cluster-control input{width:100%}.export-actions{margin-top:20px}}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.mt-20{margin-top:20px}.mb-20{margin-bottom:20px}.ml-20{margin-left:20px}.mr-20{margin-right:20px}.p-20{padding:20px}.pt-20{padding-top:20px}.pb-20{padding-bottom:20px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-10{gap:10px}.gap-20{gap:20px}.w-full{width:100%}.h-full{height:100%}.rounded{border-radius:8px}.rounded-lg{border-radius:12px}.shadow{box-shadow:0 2px 10px #0000001a}.shadow-lg{box-shadow:0 10px 30px #00000026}.bg-white{background:#fff}.bg-gray{background:#f5f5f5}.bg-primary{background:#667eea}.bg-success{background:#4caf50}.bg-warning{background:#ff9800}.bg-danger{background:#f44336}.text-white{color:#fff}.text-primary{color:#667eea}.text-success{color:#4caf50}.text-warning{color:#ff9800}.text-danger{color:#f44336}.text-muted{color:#666}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.text-sm{font-size:14px}.text-base{font-size:16px}.text-lg{font-size:18px}.text-xl{font-size:20px}.text-2xl{font-size:24px}.hidden{display:none}.block{display:block}.inline-block{display:inline-block}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.cursor-pointer{cursor:pointer}.cursor-default{cursor:default}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.transition{transition:all .3s ease}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-y-auto{overflow-y:auto}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-100%)}to{opacity:1;transform:translateX(0)}}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a1a1a1}@media print{.App-footer,.App-header,.action-buttons,.add-button,.controls,.copy-summary-btn,.delete-category-btn,.download-viz-btn,.export-button,.step-action{display:none!important}.App{background:#fff!important}.category-editor,.clustering-header,.next-steps-card,.preview-sidebar,.project-summary-card,.settings-card,.stats-card,.upload-card,.visualization-card{border:1px solid #ddd!important;box-shadow:none!important;page-break-inside:avoid}}.status-dot{animation:pulse 2s infinite;color:#2ecc71}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.api-status{align-items:center;color:#bdc3c7;display:flex;font-size:14px;gap:8px}
/*# sourceMappingURL=main.f9fcf081.css.map*/