.excel-preview{width:100%}.excel-preview-container{width:100%;overflow:auto;max-height:70vh;border:2px solid #e8e8e8;border-radius:10px;background:#fff;box-shadow:inset 0 2px 4px #00000005}.excel-preview-controls{padding:16px;background:linear-gradient(to bottom,#fafafa,#f5f5f5);border-bottom:2px solid #e8e8e8;display:flex;flex-direction:column;gap:12px}.excel-preview-controls label{display:flex;align-items:center;gap:8px;font-size:13px;color:#262626;font-weight:500;cursor:pointer;transition:color .3s ease}.excel-preview-controls label:hover{color:#1890ff}.excel-preview-controls input[type=checkbox]{cursor:pointer;width:16px;height:16px}.column-range-control{margin-left:24px}.column-range-control input[type=number]{border:1px solid #d9d9d9;border-radius:2px;padding:2px 4px;font-size:12px}.range-preset-btn{padding:6px 14px;font-size:12px;font-weight:500;border:2px solid #d9d9d9;border-radius:6px;background:#fff;cursor:pointer;transition:all .3s ease}.range-preset-btn:hover{background:#e6f7ff;border-color:#1890ff;color:#1890ff;transform:translateY(-2px);box-shadow:0 2px 8px #1890ff33}.excel-table-wrapper{overflow:auto;max-height:70vh}.excel-table{border-collapse:collapse;width:auto;min-width:100%;font-size:12px;table-layout:fixed}.excel-table th,.excel-table td{border:1px solid #d9d9d9;padding:2px 4px;text-align:center;vertical-align:middle;white-space:pre-wrap;word-break:break-word;font-size:12px;width:2em;min-width:2em;max-width:2em}.excel-table .row-header{background-color:#fafafa;font-weight:600;text-align:center;position:sticky;left:0;z-index:2;width:3em;min-width:3em;max-width:3em}.excel-table .col-header{background-color:#fafafa;font-weight:600;text-align:center;position:sticky;top:0;z-index:1;width:2em;min-width:2em;max-width:2em}.excel-table thead th.row-header{z-index:3;position:sticky;top:0;left:0}.excel-table .excel-cell{background-color:#fff;transition:background-color .2s;user-select:none;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none}.excel-table .excel-cell:hover{background-color:#e6f7ff;cursor:pointer}.excel-table .excel-cell.selected{background:linear-gradient(135deg,#91d5ff,#bae7ff)!important;border:2px solid #1890ff!important;position:relative;z-index:1;box-shadow:0 0 0 2px #1890ff33;font-weight:500}.excel-table .merged-cell{background-color:#fff;border:1px solid #d9d9d9}.excel-table tbody tr:hover{background-color:#fafafa}.preview-notice{padding:12px;background-color:#fffbe6;border-top:1px solid #d9d9d9;color:#8c8c8c;font-size:12px;text-align:center}.excel-table-wrapper::-webkit-scrollbar{width:10px;height:10px}.excel-table-wrapper::-webkit-scrollbar-track{background:#f1f1f1}.excel-table-wrapper::-webkit-scrollbar-thumb{background:#888;border-radius:5px}.excel-table-wrapper::-webkit-scrollbar-thumb:hover{background:#555}.main-content{display:flex;gap:20px;height:calc(100vh - 180px);max-width:1800px;margin:0 auto}.left-panel{flex:1;min-width:0;display:flex;flex-direction:column;gap:16px}.right-panel{width:480px;display:flex;flex-direction:column;gap:16px}.preview-card{flex:1;display:flex;flex-direction:column;overflow:hidden;border-radius:12px;box-shadow:0 2px 8px #00000014;transition:box-shadow .3s ease}.preview-card:hover{box-shadow:0 4px 16px #0000001f}.preview-card .ant-card-body{flex:1;overflow:auto;padding:20px}.preview-card .ant-card-head{border-bottom:2px solid #f0f0f0;padding:16px 20px}.preview-card .ant-card-head-title{font-size:16px;font-weight:600;color:#262626}.selection-info-card{border-radius:10px;border:2px solid #1890ff;background:linear-gradient(135deg,#e6f7ff,#f0f9ff);box-shadow:0 2px 12px #1890ff26}.selection-info-card .ant-card-body{padding:12px}.selection-info-text{font-size:13px;color:#262626;margin-bottom:10px;padding:8px 10px;background:#fff;border-radius:6px;border-left:3px solid #1890ff;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.selection-info-text strong{color:#1890ff;font-weight:600}.ai-parse-button{height:38px;font-size:14px;font-weight:500;border-radius:6px;box-shadow:0 2px 8px #1890ff4d;transition:all .3s ease}.ai-parse-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #1890ff66}.blocks-card{height:100%;display:flex;flex-direction:column;border-radius:12px;box-shadow:0 2px 8px #00000014}.blocks-card .ant-card-body{flex:1;overflow:auto;padding:20px}.blocks-card .ant-card-head{border-bottom:2px solid #f0f0f0;padding:16px 20px}.blocks-card .ant-card-head-title{font-size:16px;font-weight:600;color:#262626}.block-item{cursor:pointer;transition:all .3s ease;padding:16px;border-radius:10px;margin-bottom:12px;background:#fafafa;border:2px solid transparent}.block-item:hover{background:#f0f9ff;border-color:#91d5ff;transform:translate(4px)}.block-item.active{background:linear-gradient(135deg,#e6f7ff,#f0f9ff);border:2px solid #1890ff;box-shadow:0 2px 8px #1890ff26}.block-item .ant-list-item-meta-title{margin-bottom:8px}.block-item .ant-input{font-weight:500;border:2px dashed transparent;border-radius:6px;transition:all .3s ease}.block-item .ant-input:hover{border-color:#91d5ff;background:#fff}.block-item .ant-input:focus{border-color:#1890ff;border-style:solid;background:#fff;box-shadow:0 0 0 2px #1890ff1a}.block-item .ant-list-item-meta-description{color:#8c8c8c;font-size:13px}.empty-state{text-align:center;padding:60px 20px;color:#bfbfbf}.empty-state-icon{font-size:48px;margin-bottom:16px;opacity:.5}.empty-state-text{font-size:14px;color:#8c8c8c}.kv-editor-section{margin-top:20px;padding:20px;background:#fafafa;border-radius:10px;border:1px solid #e8e8e8}.kv-editor-title{font-size:15px;font-weight:600;color:#262626;margin-bottom:16px;padding-bottom:12px;border-bottom:2px solid #e8e8e8}.kv-table .ant-table{border-radius:8px;overflow:hidden}.kv-table .ant-table-thead>tr>th{background:#fafafa;font-weight:600;color:#262626;border-bottom:2px solid #e8e8e8}.kv-table .ant-table-tbody>tr:hover>td{background:#f0f9ff}.kv-table .ant-input{border-radius:6px;transition:all .3s ease}.kv-table .ant-input:focus{border-color:#1890ff;box-shadow:0 0 0 2px #1890ff1a}.action-buttons{display:flex;gap:12px;margin-top:16px}.action-buttons .ant-btn{border-radius:8px;font-weight:500;transition:all .3s ease}.action-buttons .ant-btn:hover{transform:translateY(-2px)}*{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}#root{width:100%;min-height:100vh}.app{padding:20px}
