.table-comparator-container{--tcc-bg: #f6f8fc;--tcc-card: #ffffff;--tcc-soft: #f8fafc;--tcc-line: #e2e8f0;--tcc-line-strong: #cbd5e1;--tcc-text: #0f172a;--tcc-sub: #475569;--tcc-muted: #64748b;--tcc-primary: #2563eb;--tcc-primary-dark: #1d4ed8;--tcc-primary-soft: #eff6ff;--tcc-purple: #7c3aed;--tcc-success: #10b981;--tcc-danger: #ef4444;--tcc-warning: #f59e0b;--tcc-shadow: 0 22px 60px rgba(15, 23, 42, .1);--tcc-shadow-soft: 0 10px 30px rgba(15, 23, 42, .07);--tcc-radius-lg: 28px;--tcc-radius-md: 20px;--tcc-radius-sm: 12px;--tcc-mono: "JetBrains Mono", "Fira Code", "SFMono-Regular", Consolas, monospace;--tcc-sans: Inter, -apple-system, BlinkMacSystemFont, "PingFang SC", "Microsoft YaHei", sans-serif;min-height:100vh;padding:clamp(16px,2.5vw,32px);color:var(--tcc-text);font-family:var(--tcc-sans);background:radial-gradient(circle at 10% 0%,rgba(37,99,235,.12),transparent 30%),radial-gradient(circle at 92% 6%,rgba(124,58,237,.1),transparent 28%),linear-gradient(180deg,#f8fbff 0%,var(--tcc-bg) 100%)}.table-comparator-container *,.table-comparator-container *:before,.table-comparator-container *:after{box-sizing:border-box}.tcc-hero,.tcc-shell,.tcc-status{width:min(1460px,100%);margin-left:auto;margin-right:auto}.tcc-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:end;padding:clamp(26px,4vw,44px);border:1px solid rgba(226,232,240,.95);border-radius:var(--tcc-radius-lg);background:linear-gradient(135deg,#fffffff5,#eff6ffe6),var(--tcc-card);box-shadow:var(--tcc-shadow)}.tcc-back{position:absolute;left:18px;top:18px;min-height:34px;padding:0 12px;border:1px solid #bfdbfe;border-radius:999px;color:var(--tcc-primary);background:#fff;cursor:pointer;font-weight:800}.tcc-kicker,.tcc-card-head span,.tcc-result-head span{display:inline-flex;color:var(--tcc-primary);font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase}.tcc-kicker{margin-bottom:12px;padding:7px 12px;border:1px solid #bfdbfe;border-radius:999px;background:var(--tcc-primary-soft)}.tcc-hero h1{margin:0 0 10px;color:var(--tcc-text);font-size:clamp(32px,4vw,52px);font-weight:900;line-height:1.05;letter-spacing:-.045em}.tcc-hero p{max-width:780px;margin:0;color:var(--tcc-sub);font-size:15px;line-height:1.75}.tcc-hero-stats{display:grid;grid-template-columns:repeat(2,minmax(104px,1fr));gap:10px;min-width:230px}.tcc-hero-stats span{padding:14px 12px;border:1px solid var(--tcc-line);border-radius:18px;background:#ffffffdb;text-align:center;box-shadow:0 8px 22px #2563eb0f}.tcc-hero-stats strong,.tcc-hero-stats small{display:block}.tcc-hero-stats strong{color:var(--tcc-primary);font-size:22px}.tcc-hero-stats small{margin-top:4px;color:var(--tcc-muted);font-size:11px;font-weight:900}.tcc-shell{margin-top:20px}.tcc-card{border:1px solid rgba(226,232,240,.95);border-radius:var(--tcc-radius-md);background:#fffffff0;box-shadow:var(--tcc-shadow-soft)}.tcc-upload-card,.tcc-config-card,.tcc-result-card,.tcc-ai-panel,.tcc-progress,.tcc-help-card{padding:18px}.tcc-card-head,.tcc-result-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;margin-bottom:16px}.tcc-card-head.compact{margin-bottom:14px}.tcc-card-head h2,.tcc-result-head h2{margin:5px 0 0;color:var(--tcc-text);font-size:20px;line-height:1.2;letter-spacing:-.03em}.tcc-card-head>strong,.tcc-card-head>small{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;color:var(--tcc-primary);background:var(--tcc-primary-soft);font-size:12px;font-weight:900}.tcc-upload-zone{display:flex;min-height:230px;flex-direction:column;align-items:center;justify-content:center;gap:10px;padding:28px;border:1.5px dashed #bfdbfe;border-radius:18px;background:linear-gradient(135deg,#eff6ffd1,#f5f3ff9e);text-align:center;cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.tcc-upload-zone:hover,.tcc-upload-zone.has-file{transform:translateY(-1px);border-color:var(--tcc-primary);box-shadow:0 16px 36px #2563eb1f}.tcc-upload-icon{display:grid;width:66px;height:66px;place-items:center;border:1px solid #bfdbfe;border-radius:22px;color:var(--tcc-primary);background:#fff;box-shadow:0 12px 28px #2563eb1f;font-size:30px;font-weight:900}.tcc-upload-zone p{max-width:100%;overflow:hidden;margin:0;color:var(--tcc-text);font-size:16px;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.tcc-upload-zone small,.tcc-result-head p,.tcc-ai-desc{margin:0;color:var(--tcc-muted);font-size:13px;line-height:1.6}.tcc-field{display:flex;flex-direction:column;gap:8px;margin-top:14px}.tcc-field span{color:var(--tcc-sub);font-size:13px;font-weight:900}.tcc-field select{width:100%;min-height:42px;padding:0 12px;border:1px solid var(--tcc-line);border-radius:12px;outline:none;color:var(--tcc-text);background:var(--tcc-soft);font:14px var(--tcc-sans)}.tcc-field select:focus{border-color:#bfdbfe;box-shadow:0 0 0 3px #2563eb1f;background:#fff}.tcc-workspace{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:18px;align-items:start;margin-top:18px}.tcc-main-panel{display:flex;min-width:0;flex-direction:column;gap:18px}.tcc-duplicate-bar{margin-bottom:14px;padding:12px;border:1px solid #fde68a;border-radius:14px;color:#92400e;background:#fffbeb}.tcc-duplicate-bar strong{display:block;margin-bottom:8px;font-size:13px}.tcc-duplicate-bar div{display:flex;flex-wrap:wrap;gap:6px}.tcc-duplicate-bar span{padding:4px 8px;border-radius:999px;background:#fef3c7;font-size:12px;font-weight:800}.tcc-column-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(160px,1fr));gap:10px}.tcc-column-chip{display:flex;align-items:center;gap:8px;min-width:0;padding:10px 11px;border:1px solid var(--tcc-line);border-radius:12px;background:var(--tcc-soft);cursor:pointer;transition:all .18s ease}.tcc-column-chip.duplicate{border-color:#fde68a;background:#fffbeb}.tcc-column-chip:hover,.tcc-column-chip:has(input:checked){border-color:#bfdbfe;background:var(--tcc-primary-soft)}.tcc-column-chip input{accent-color:var(--tcc-primary)}.tcc-column-chip span{overflow:hidden;color:var(--tcc-sub);font-size:13px;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.tcc-selected-info{margin-top:12px;padding:11px 12px;border:1px solid #bfdbfe;border-radius:12px;color:var(--tcc-primary-dark);background:var(--tcc-primary-soft);font-size:13px;font-weight:800}.tcc-actions,.tcc-export-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.tcc-btn{display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 16px;border:1px solid transparent;border-radius:13px;cursor:pointer;font-weight:900;transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease}.tcc-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 10px 24px #0f172a1a}.tcc-btn:disabled{opacity:.55;cursor:not-allowed}.tcc-btn.primary{color:#fff;background:linear-gradient(135deg,var(--tcc-primary),var(--tcc-primary-dark));box-shadow:0 12px 26px #2563eb2e}.tcc-btn.ghost{color:var(--tcc-sub);border-color:var(--tcc-line);background:#fff}.tcc-btn.ai{width:100%;margin-top:14px;color:#fff;background:linear-gradient(135deg,var(--tcc-purple),#ec4899);box-shadow:0 12px 28px #7c3aed33}.tcc-progress{text-align:center}.tcc-progress-track{height:10px;overflow:hidden;border-radius:999px;background:#e2e8f0}.tcc-progress-track div{height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--tcc-primary),var(--tcc-purple));transition:width .24s ease}.tcc-progress p{margin:10px 0 0;color:var(--tcc-muted);font-size:13px;font-weight:800}.tcc-ai-panel{position:sticky;top:18px}.tcc-ai-result,.tcc-ai-empty{margin-top:14px;padding:12px;border:1px solid #ddd6fe;border-radius:14px;color:var(--tcc-sub);background:#f5f3ff}.tcc-ai-result strong{display:block;margin:10px 0 6px;color:var(--tcc-purple);font-size:13px}.tcc-ai-result strong:first-child{margin-top:0}.tcc-ai-result p,.tcc-ai-result ul,.tcc-ai-empty{margin:0;font-size:13px;line-height:1.65}.tcc-ai-result ul{padding-left:18px}.tcc-result-head{align-items:center}.tcc-summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.tcc-summary-grid span{padding:12px;border:1px solid var(--tcc-line);border-radius:14px;color:var(--tcc-muted);background:var(--tcc-soft);text-align:center;font-size:12px;font-weight:800}.tcc-summary-grid strong{display:block;margin-bottom:3px;color:var(--tcc-primary);font-size:18px}.tcc-table-wrap{overflow:auto;border:1px solid var(--tcc-line);border-radius:16px}.tcc-result-table{width:100%;border-collapse:collapse;font-size:13px}.tcc-result-table th{position:sticky;top:0;z-index:1;padding:12px;border-bottom:1px solid var(--tcc-line-strong);color:var(--tcc-text);background:var(--tcc-soft);text-align:left;white-space:nowrap}.tcc-result-table th.new-column{color:#047857;background:#ecfdf5}.tcc-result-table td{max-width:260px;overflow:hidden;padding:10px 12px;border-bottom:1px solid var(--tcc-line);color:var(--tcc-sub);text-overflow:ellipsis;white-space:nowrap}.tcc-result-table td.new-column{font-weight:800}.tcc-result-table tbody tr:hover{background:var(--tcc-primary-soft)}.tcc-result-table tbody tr.is-diff td{background:#fff7ed}.tcc-result-table tbody tr.is-empty td{background:#f8fafc;color:#94a3b8}.tcc-table-note{padding:12px;color:var(--tcc-muted);background:var(--tcc-soft);border:1px solid var(--tcc-line);border-top:0;border-radius:0 0 16px 16px;font-size:12px;text-align:center}.tcc-help-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-top:18px}.tcc-help-card h3{margin:0 0 8px;color:var(--tcc-text);font-size:16px}.tcc-help-card p{margin:0;color:var(--tcc-muted);font-size:13px;line-height:1.6}.tcc-status{margin-top:14px;padding:12px 14px;border-radius:14px;font-size:13px;font-weight:800}.tcc-status.success{color:#047857;background:#ecfdf5;border:1px solid #bbf7d0}.tcc-status.error{color:#b91c1c;background:#fef2f2;border:1px solid #fecaca}.tcc-status.info{color:#1d4ed8;background:#eff6ff;border:1px solid #bfdbfe}@media (max-width: 1180px){.tcc-workspace{grid-template-columns:1fr}.tcc-ai-panel{position:static}}@media (max-width: 900px){.tcc-hero{grid-template-columns:1fr;align-items:start}.tcc-hero-stats,.tcc-summary-grid,.tcc-help-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.table-comparator-container{padding:12px}.tcc-hero,.tcc-card{border-radius:18px}.tcc-back{position:static;width:fit-content;margin-bottom:14px}.tcc-hero-stats,.tcc-summary-grid,.tcc-help-grid{grid-template-columns:1fr}.tcc-upload-zone{min-height:190px}.tcc-result-head{align-items:flex-start;flex-direction:column}.tcc-btn,.tcc-actions,.tcc-export-actions{width:100%}}
