:root{--bg-color: #0d1117;--panel-bg: #161b22;--border-color: #30363d;--text-primary: #c9d1d9;--text-secondary: #8b949e;--accent-color: #58a6ff;--accent-hover: #3182ce;--danger-color: #f85149;--danger-hover: #e5534b;--success-color: #2ea043;--font-family: "Outfit", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif}.csv-page-wrapper *{box-sizing:border-box;margin:0;padding:0}.csv-page-wrapper{font-family:var(--font-family);background-color:var(--bg-color);color:var(--text-primary);min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;padding:4rem 60px;gap:3rem;width:100%}.csv-page-wrapper .app-container{background-color:var(--panel-bg);border:1px solid var(--border-color);border-radius:12px;width:100%;max-width:2000px;padding:2rem;box-shadow:0 10px 30px #00000080;display:flex;flex-direction:column;gap:1.5rem}.csv-page-wrapper .header{text-align:center;margin-bottom:1rem}.csv-page-wrapper .header h1{font-size:2rem;font-weight:700;color:#fff;margin-bottom:.5rem;display:flex;align-items:center;justify-content:center;gap:.5rem}.csv-page-wrapper .header p{color:var(--text-secondary)}.csv-page-wrapper .dropzone{border:2px dashed var(--border-color);border-radius:8px;padding:3rem 2rem;text-align:center;cursor:pointer;transition:all .3s ease;background-color:#161b2280;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem}.csv-page-wrapper .dropzone.active{border-color:var(--accent-color);background-color:#58a6ff1a}.csv-page-wrapper .dropzone:hover{border-color:var(--accent-hover)}.csv-page-wrapper .dropzone-icon{color:var(--text-secondary);width:48px;height:48px;transition:color .3s ease}.csv-page-wrapper .dropzone.active .dropzone-icon{color:var(--accent-color)}.csv-page-wrapper .dropzone p{color:var(--text-primary);font-weight:500}.csv-page-wrapper .hint{color:var(--text-secondary);font-size:.875rem}.csv-page-wrapper .file-list-container{display:flex;flex-direction:column;gap:1rem}.csv-page-wrapper .file-list-container h3{font-size:1.25rem;color:#fff;display:flex;align-items:center;border-bottom:1px solid var(--border-color);padding-bottom:.5rem}.csv-page-wrapper .file-list{display:flex;flex-direction:column;gap:.5rem;max-height:300px;overflow-y:auto;padding-right:.5rem}.csv-page-wrapper .file-list::-webkit-scrollbar{width:6px}.csv-page-wrapper .file-list::-webkit-scrollbar-track{background:var(--panel-bg)}.csv-page-wrapper .file-list::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.csv-page-wrapper .file-item{display:flex;align-items:center;justify-content:space-between;background-color:#ffffff0d;border:1px solid var(--border-color);border-radius:6px;padding:.75rem 1rem;transition:transform .2s ease,background-color .2s ease}.csv-page-wrapper .file-item:hover{background-color:#ffffff14}.csv-page-wrapper .file-info{display:flex;align-items:center;gap:.75rem;overflow:hidden}.csv-page-wrapper .file-icon{color:var(--danger-color);flex-shrink:0}.csv-page-wrapper .file-name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.9rem}.csv-page-wrapper .file-item-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.csv-page-wrapper .btn-icon{background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.25rem;border-radius:4px;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.csv-page-wrapper .btn-icon:hover:not(:disabled){background-color:#ffffff1a;color:var(--text-primary)}.csv-page-wrapper .btn-icon.delete:hover{color:var(--danger-color);background-color:#f851491a}.csv-page-wrapper .csv-preview-container{margin-bottom:1.5rem;margin-top:1.5rem}.csv-page-wrapper .table-wrapper{overflow-x:auto;border:1px solid rgba(255,255,255,.1);border-radius:8px;background:#0003}.csv-page-wrapper .csv-table{width:100%;border-collapse:collapse;font-size:.875rem}.csv-page-wrapper .csv-table th,.csv-page-wrapper .csv-table td{padding:.75rem 1rem;text-align:left;border-bottom:1px solid rgba(255,255,255,.05);border-right:1px solid rgba(255,255,255,.05);position:relative;max-width:200px}.csv-page-wrapper .csv-table th:last-child,.csv-page-wrapper .csv-table td:last-child{border-right:none}.csv-page-wrapper .csv-table th{background:#ffffff0d;font-weight:500;color:var(--text-color);position:relative}.csv-page-wrapper .th-content{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.csv-page-wrapper .truncate{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex:1}.csv-page-wrapper .table-cell{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#fffc}.csv-page-wrapper .csv-table tbody tr:hover{background:#ffffff05}.csv-page-wrapper .delete-col-btn{opacity:0;visibility:hidden;background:#ef44441a;color:#ef4444;border:none;border-radius:4px;padding:.25rem;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;flex-shrink:0}.csv-page-wrapper .group-hover-col:hover .delete-col-btn{opacity:1;visibility:visible}.csv-page-wrapper .delete-col-btn:hover{background:#ef444433}.csv-page-wrapper .actions{display:flex;justify-content:flex-end;margin-top:1rem;border-top:1px solid var(--border-color);padding-top:1.5rem}.csv-page-wrapper .btn{padding:.75rem 1.5rem;border-radius:6px;font-size:1rem;font-weight:600;cursor:pointer;border:none;display:flex;align-items:center;gap:.5rem;transition:all .2s ease}.csv-page-wrapper .btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.csv-page-wrapper .btn-primary{background-color:var(--success-color);color:#fff}.csv-page-wrapper .btn-primary:hover:not(:disabled){background-color:#2c974b;transform:translateY(-1px)}.text-muted-foreground{color:#fff9}.text-sm{font-size:.875rem}.font-normal{font-weight:400}
