@import"https://fonts.googleapis.com/css2?family=Inter:wght@400;450;500;525;600;650&display=swap";:root{--bg-primary: #ffffff;--bg-secondary: #fafafa;--bg-tertiary: #f4f4f5;--text-primary: #1b1b1b;--text-secondary: #303032;--text-tertiary: #5c5c5e;--border-primary: #e3e3e4;--border-secondary: #ebebec;--border-accent: #1b1b1d;--btn-primary-bg: #272727;--btn-primary-hover: #050505;--btn-secondary-bg: #ffffff;--btn-secondary-hover: #f6f6f6;--info-primary: #005aa0;--info-bg: #e7eefc;--warning-primary: #b45309;--warning-bg: #fef3c7;--spacing-1: .25rem;--spacing-2: .5rem;--spacing-3: .75rem;--spacing-4: 1rem;--radius-sm: .375rem;--radius-md: .5rem}*{box-sizing:border-box}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}.app-container{display:flex;flex-direction:column;height:100vh;overflow:hidden;background-color:var(--bg-secondary)}.content{flex:1;overflow-y:auto;padding:var(--spacing-4)}.loading-state{display:flex;align-items:center;justify-content:center;height:100%;color:var(--text-tertiary)}.spinner{width:24px;height:24px;border:2px solid var(--border-primary);border-top-color:var(--btn-primary-bg);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.grounding-panel{display:flex;flex-direction:column;gap:var(--spacing-3);height:100%}.preview-section{flex:1;min-height:0;display:flex;flex-direction:column;gap:var(--spacing-2)}.page-navigation{display:flex;align-items:center;justify-content:center;gap:var(--spacing-2);padding:var(--spacing-2);background-color:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md)}.nav-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;background-color:var(--bg-secondary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer}.nav-btn:disabled{opacity:.4;cursor:not-allowed}.page-indicator{font-size:.75rem;font-weight:500;color:var(--text-secondary);min-width:70px;text-align:center}.preview-container-outer{position:relative;flex:1;min-height:200px;display:flex;flex-direction:column}.preview-container{position:relative;border:1px solid var(--border-primary);border-radius:var(--radius-md);background-color:var(--bg-tertiary);flex:1;min-height:0;overflow:auto}.preview-overlay-spinner{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background-color:var(--bg-tertiary);border-radius:var(--radius-md);z-index:10;pointer-events:none}.preview-overlay-spinner.preview-overlay-spinner-transparent{background-color:#f4f4f559}.preview-container.selecting{cursor:crosshair;-webkit-user-select:none;user-select:none}.preview-loading{display:flex;align-items:center;justify-content:center;min-height:200px;color:var(--text-tertiary)}.preview-image{width:100%;min-width:100%;height:auto;display:block}.no-preview{padding:var(--spacing-4);text-align:center;color:var(--text-tertiary);background:var(--bg-tertiary);border-radius:var(--radius-md);border:1px solid var(--border-secondary)}.action-bar{display:flex;align-items:center;gap:var(--spacing-2);padding:var(--spacing-2) 0;flex-shrink:0}.action-bar-spacer{flex:1}.action-group{display:flex;align-items:center;gap:2px;background-color:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);padding:2px}.icon-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;padding:0;border:none;border-radius:calc(var(--radius-sm) - 2px);background-color:transparent;color:var(--text-secondary);cursor:pointer;transition:background-color .12s ease,color .12s ease;flex-shrink:0}.icon-btn svg{width:16px;height:16px}.icon-btn:hover:not(:disabled){background-color:var(--btn-secondary-hover);color:var(--text-primary)}.icon-btn:disabled{opacity:.4;cursor:not-allowed}.icon-btn-active{background-color:var(--info-bg);color:var(--info-primary)}.icon-btn-loading{pointer-events:none}.icon-btn-primary{background-color:var(--btn-primary-bg);color:#fff}.icon-btn-primary:hover:not(:disabled){background-color:var(--btn-primary-hover);color:#fff}.icon-btn-split{width:28px;border-radius:calc(var(--radius-sm) - 2px) 0 0 calc(var(--radius-sm) - 2px)}.icon-btn-chevron{width:16px;border-radius:0 calc(var(--radius-sm) - 2px) calc(var(--radius-sm) - 2px) 0}.icon-btn-chevron svg{width:10px;height:10px}.mode-dropdown{position:relative;display:flex}.mode-dropdown-menu{position:absolute;bottom:calc(100% + 6px);left:0;width:max-content;min-width:150px;max-width:calc(100vw - 16px);background-color:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000001f;z-index:100;overflow:hidden}.mode-dropdown-item{display:flex;align-items:center;gap:var(--spacing-2);width:100%;padding:var(--spacing-2) var(--spacing-3);border:none;background:none;color:var(--text-secondary);font-size:.8125rem;cursor:pointer;text-align:left;transition:background-color .1s ease}.mode-dropdown-item svg{flex-shrink:0;width:15px;height:15px}.mode-dropdown-item:hover{background-color:var(--bg-tertiary);color:var(--text-primary)}.mode-dropdown-item-active{color:var(--info-primary);background-color:var(--info-bg)}.mode-dropdown-item-active:hover{background-color:var(--info-bg);color:var(--info-primary);opacity:.9}.spinner-small{width:14px;height:14px;border-width:1.5px}.doc-switcher-row{display:flex;align-items:center;gap:var(--spacing-1);width:100%}.doc-switcher-row .doc-switcher{flex:1;min-width:0}.doc-upload-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;flex-shrink:0;background-color:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-secondary);cursor:pointer;transition:background-color .12s ease,color .12s ease}.doc-upload-btn:hover:not(:disabled){background-color:var(--btn-secondary-hover);color:var(--text-primary)}.doc-upload-btn:disabled{opacity:.4;cursor:not-allowed}.doc-upload-spinner{width:12px;height:12px;border:2px solid var(--border-primary);border-top-color:var(--info-primary);border-radius:50%;animation:doc-upload-spin .6s linear infinite}@keyframes doc-upload-spin{to{transform:rotate(360deg)}}.doc-switcher{position:relative;width:100%}.doc-switcher-btn{display:flex;align-items:center;gap:var(--spacing-1);height:28px;padding:0 var(--spacing-2);background-color:var(--bg-tertiary);border:1px solid var(--border-primary);border-radius:var(--radius-sm);color:var(--text-secondary);font-size:.75rem;cursor:pointer;width:100%;transition:background-color .12s ease,color .12s ease}.doc-switcher-btn:hover:not(:disabled){background-color:var(--btn-secondary-hover);color:var(--text-primary)}.doc-switcher-btn:disabled{opacity:.4;cursor:not-allowed}.doc-switcher-btn-open{background-color:var(--info-bg);color:var(--info-primary);border-color:var(--info-primary)}.doc-switcher-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;text-align:left}.doc-switcher-menu{position:absolute;top:calc(100% + 4px);left:0;right:0;background-color:var(--bg-primary);border:1px solid var(--border-primary);border-radius:var(--radius-md);box-shadow:0 4px 12px #0000001f;z-index:100;overflow:hidden}.doc-switcher-search-wrapper{padding:var(--spacing-2);border-bottom:1px solid var(--border-secondary)}.doc-switcher-search{width:100%;padding:var(--spacing-1) var(--spacing-2);border:1px solid var(--border-primary);border-radius:var(--radius-sm);font-size:.8125rem;color:var(--text-primary);background-color:var(--bg-secondary);outline:none;box-sizing:border-box}.doc-switcher-search:focus{border-color:var(--info-primary)}.doc-switcher-list{max-height:200px;overflow-y:auto}.doc-switcher-item-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.doc-switcher-empty{padding:var(--spacing-3);text-align:center;color:var(--text-tertiary);font-size:.8125rem}.doc-switcher-chevron{flex-shrink:0;margin-left:auto}.doc-switcher-item-row{display:flex;align-items:center;padding:0 var(--spacing-1) 0 0;transition:background-color .1s ease}.doc-switcher-item-row:hover{background-color:var(--bg-tertiary)}.doc-switcher-item-row-active{background-color:var(--info-bg)}.doc-switcher-item-name-btn{display:flex;align-items:center;gap:var(--spacing-2);flex:1;min-width:0;padding:var(--spacing-2) var(--spacing-3);border:none;background:none;color:var(--text-secondary);font-size:.8125rem;cursor:pointer;text-align:left}.doc-switcher-item-row-active .doc-switcher-item-name-btn{color:var(--info-primary)}.doc-switcher-item-check{flex-shrink:0}.doc-switcher-item-actions{display:flex;align-items:center;gap:2px;flex-shrink:0}.doc-status-badge{display:inline-flex;align-items:center;padding:1px 5px;border-radius:3px;font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.02em;line-height:1.4;white-space:nowrap;flex-shrink:0}.doc-status-badge-matched{background-color:#dcfce7;color:#166534}.doc-status-badge-unmatched{background-color:#fef3c7;color:#92400e}.doc-status-badge-excluded{background-color:#fee2e2;color:#991b1b}.doc-action-btn{display:flex;align-items:center;justify-content:center;width:22px;height:22px;padding:0;border:none;border-radius:3px;background-color:transparent;color:var(--text-tertiary);cursor:pointer;transition:background-color .12s ease,color .12s ease;flex-shrink:0}.doc-action-btn:hover{background-color:var(--bg-secondary)}.doc-action-btn-unmatch:hover{color:#b45309;background-color:#fef3c7}.doc-action-btn-exclude:hover{color:#dc2626;background-color:#fee2e2}.infinite-scroll-wrapper{display:flex;flex-direction:column;align-items:safe center;gap:8px}.infinite-scroll-page{flex-shrink:0;position:relative}.infinite-scroll-page-placeholder{width:100%;min-height:400px;display:flex;align-items:center;justify-content:center;background-color:var(--bg-tertiary);border-radius:var(--radius-sm)}.page-info-banner{display:flex;align-items:center;gap:var(--spacing-2);padding:6px 10px;font-size:.75rem;line-height:1.35;color:var(--warning-primary);background-color:var(--warning-bg);border:1px solid var(--border-secondary);border-radius:var(--radius-sm)}.page-info-banner svg{flex-shrink:0}.page-info-banner-text{flex:1;min-width:0}.page-info-banner-retry{flex-shrink:0;padding:3px 10px;font-size:.6875rem;font-weight:500;color:var(--text-secondary);background-color:var(--btn-secondary-bg);border:1px solid var(--border-primary);border-radius:var(--radius-sm);cursor:pointer}.page-info-banner-retry:hover{background-color:var(--btn-secondary-hover)}.sheet-source-hint{padding:6px 10px;font-size:.75rem;line-height:1.35;color:var(--text-secondary);background-color:var(--bg-tertiary);border:1px solid var(--border-secondary);border-radius:var(--radius-sm)}.source-navigation{position:absolute;bottom:10px;left:50%;transform:translate(-50%);z-index:10;display:flex;align-items:center;gap:4px;padding:3px 4px;background-color:var(--bg-primary);border:1px solid var(--border-primary);border-radius:20px;box-shadow:0 1px 4px #00000014}.source-indicator{font-size:.6875rem;font-weight:500;color:var(--text-secondary);white-space:nowrap;padding:0 2px}.mode-dropdown-menu-wide{min-width:240px}.preview-container.annotating{cursor:crosshair}.annotation-layer{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.annotation-layer-svg{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;display:block;overflow:visible;letter-spacing:normal}.annotation-text{position:absolute;white-space:pre;line-height:1.2;font-weight:525;pointer-events:none;transform-origin:left top}.annotation-hit{position:absolute;transform:translate(-50%,-50%);padding:12px;pointer-events:auto}.annotation-delete{display:flex;align-items:center;justify-content:center;width:16px;height:16px;padding:0;border:1px solid var(--border-primary);border-radius:50%;background-color:var(--bg-primary);color:var(--text-secondary);font-size:12px;line-height:1;cursor:pointer;opacity:0;transform:translate(4px,-14px);transition:opacity .12s ease;box-shadow:0 1px 4px #00000026}.annotation-hit:hover .annotation-delete{opacity:1}.annotation-delete:hover{color:#b91c1c;border-color:#b91c1c}.annotation-text-input{position:absolute;transform:translateY(-2px);min-width:120px;max-width:60%;padding:2px 6px;border:1px dashed var(--border-primary);border-radius:var(--radius-sm);background-color:var(--bg-primary);font-family:inherit;font-weight:525;pointer-events:auto;outline:none;box-shadow:0 2px 8px #0000001f}.annotation-t-glyph{font-size:13px;font-weight:650;line-height:1}.annotation-colors{display:flex;align-items:center;gap:5px;padding:0 5px}.annotation-color-dot{width:12px;height:12px;padding:0;border:none;border-radius:50%;cursor:pointer;box-shadow:0 0 0 1px #00000014 inset}.annotation-color-dot-selected{box-shadow:0 0 0 1.5px var(--bg-primary),0 0 0 2.5px currentColor}.annotation-sync-warning{position:absolute;bottom:10px;left:10px;z-index:20;padding:6px 10px;font-size:.75rem;color:var(--warning-primary);background-color:var(--warning-bg);border:1px solid var(--border-secondary);border-radius:var(--radius-sm);box-shadow:0 1px 4px #00000014}
