.container{width:100%;max-width:2560px;padding:16px 20px;gap:16px;}
.uploadHero .dropzone--hero{min-height:110px;display:flex;flex-direction:row;padding:20px 28px;gap:20px;text-align:left;}
.uploadHero .dropzone__icon{width:48px;height:48px;font-size:24px;}
.uploadHero .dropzone__headline{font-size:20px;}
.workspaceGrid{grid-template-columns:300px minmax(0,1fr);gap:16px;}
.workspaceGrid.withPreview{grid-template-columns:minmax(440px,42%) minmax(0,1fr);}
.filesCard{min-width:0;}
.filesCard .toolbar{align-items:flex-start;flex-direction:column;gap:12px;padding:16px;}
.filesCard .toolbar__actions{gap:8px;}
.filesCard .btn--secondary{background:#fff;color:#24344b;border-color:#cbd5e1;}
.filesCard .btn--danger{background:#dc2626;color:#fff;border-color:#dc2626;}
.filesCard .btn--primary{background:#0f6cbd;color:#fff;border-color:#0f6cbd;}
.filesCard .tableWrap{padding:0;max-height:calc(100vh - 330px);min-height:300px;overflow:auto;position:relative;}
.metadataSheet{border-collapse:separate;border-spacing:0;width:max-content;min-width:100%;font-size:12px;outline:none;}
.metadataSheet th{position:sticky;top:0;z-index:4;background:#f3f6fa;color:#475569;text-align:left;font-weight:600;height:38px;min-width:155px;max-width:155px;padding:9px 10px;border-bottom:1px solid #cbd5e1;border-right:1px solid #e2e8f0;white-space:nowrap;}
.metadataSheet th.sheetWide{min-width:270px;max-width:270px;}
.metadataSheet td{height:36px;padding:0;border-bottom:1px solid #e2e8f0;border-right:1px solid #e2e8f0;background:#fff;}
.metadataSheet .sheetCheck,.metadataSheet .sheetEye{min-width:38px;width:38px;max-width:38px;text-align:center;position:sticky;left:0;z-index:3;background:#fff;}
.metadataSheet .sheetEye{left:38px;box-shadow:2px 0 3px #00000008;}
.metadataSheet th.sheetCheck,.metadataSheet th.sheetEye{z-index:6;background:#f3f6fa;}
.sheetCheck input{accent-color:#0f6cbd;width:15px;height:15px;cursor:pointer;}
.eyeButton{border:0;background:transparent;color:#64748b;display:grid;place-items:center;width:34px;height:34px;cursor:pointer;}
.eyeButton:hover,.eyeButton[aria-pressed=true]{color:#0f6cbd;background:#eaf3ff;border-radius:5px;}
.eyeButton:disabled{opacity:.35;cursor:default;}
.sheetCell{position:relative;min-width:155px;max-width:155px;cursor:cell;user-select:none;}
.sheetCellText{display:block;padding:9px 10px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:270px;min-height:35px;}
.sheetReadonly{color:#64748b;background:#fafbfd!important;}
.sheetChoice .sheetCellText{padding-right:23px;}
.sheetChoice::after{content:"⌄";position:absolute;right:8px;top:8px;color:#94a3b8;pointer-events:none;}
.metadataSheet .sheetSelected{background:#e8f2ff!important;box-shadow:inset 0 0 0 1px #3b82f6;}
.metadataSheet .sheetFillTarget{background:#e8f2ff!important;box-shadow:inset 0 0 0 1px #60a5fa;}
.sheetFillHandle{position:absolute;bottom:-4px;right:-4px;width:9px;height:9px;background:#1677e8;border:1px solid #fff;z-index:5;cursor:crosshair;touch-action:none;}
.sheetEditor{position:absolute;inset:0;width:100%;height:100%;z-index:7;border:2px solid #1677e8;background:#fff;color:#1e293b;border-radius:0;outline:none;padding:4px 8px;font:inherit;user-select:text;}
.sheetEmpty{padding:32px!important;color:#64748b;text-align:center;}
.fileFooter{padding:12px 16px;display:flex;flex-wrap:wrap;gap:8px 20px;font-size:12px;}
#gridStatus{flex-basis:100%;color:#0f6cbd;}
.sidePreview{position:sticky;top:86px;min-width:0;}
.previewHeader{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px;}
.previewHeader>div{min-width:0;}
#sidePreviewName{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:32vw;}
.previewTools{display:flex;align-items:center;justify-content:center;gap:8px;padding:8px;border-bottom:1px solid #e2e8f0;font-size:12px;}
.previewTools .btn{background:#fff;color:#334155;border-color:#cbd5e1;}
.previewViewport{height:calc(100vh - 310px);min-height:430px;position:relative;overflow:hidden;background:#e4e9ef;cursor:grab;touch-action:none;}
.previewViewport.panning{cursor:grabbing;}
#previewImage{position:absolute;top:0;left:0;max-width:none;max-height:none;transform-origin:0 0;user-select:none;pointer-events:none;}
#previewText{position:absolute;inset:0;margin:0;padding:20px;overflow:auto;white-space:pre-wrap;background:#fff;color:#1e293b;font:13px/1.6 ui-monospace,monospace;cursor:text;user-select:text;}
.previewMessage{position:absolute;inset:0;display:grid;place-items:center;padding:24px;color:#475569;text-align:center;}
.previewHint{padding:9px 14px;color:#64748b;font-size:11px;text-align:center;}
@media(min-width:1800px){.workspaceGrid{grid-template-columns:330px minmax(0,1fr);}}
@media(max-width:1000px){.workspaceGrid,.workspaceGrid.withPreview{grid-template-columns:1fr;}.sidePreview{position:relative;top:auto;}#sidePreviewName{max-width:70vw;}.previewViewport{height:60vh;min-height:360px;}.filesCard .tableWrap{max-height:65vh;}}
