.ocr-tool{max-width:780px;margin:0 auto}.ocr-page-header{text-align:center;padding:32px 0 24px;position:relative}.ocr-page-header h1{font-size:2.2rem;font-weight:750;color:#3d3830;letter-spacing:.03em;margin-bottom:6px}.ocr-subtitle{font-size:.9rem;color:#b5a898}.ocr-user-bar{position:absolute;top:36px;right:0;font-size:.82rem;color:#6b6058;display:flex;align-items:center;gap:8px}.ocr-login-overlay{position:fixed;top:0;right:0;bottom:0;left:0;background:#f6f1e9;z-index:9999;display:flex;align-items:center;justify-content:center}.ocr-login-box{background:#fefcf7;border:1px solid #e8dfd2;border-radius:16px;padding:40px 36px;width:320px}.ocr-login-box h2{text-align:center;font-size:1.3rem;color:#3d3830;margin-bottom:20px}.ocr-login-field{margin-bottom:12px}.ocr-login-field label{display:block;font-size:.8rem;color:#8a7e70;margin-bottom:4px}.ocr-login-field input{width:100%;padding:8px 12px;font-size:.9rem;border:1px solid #d8cfc2;border-radius:8px;background:#fefcf7;color:#3d3830;outline:none;font-family:inherit}.ocr-login-field input:focus{border-color:#c89050}.ocr-login-error{color:#c87068;font-size:.8rem;text-align:center}.ocr-login-status{text-align:center;margin-bottom:14px;font-size:.82rem}.ocr-card{background:#fefcf7;border:1px solid #e8dfd2;border-radius:14px;overflow:hidden}.ocr-card-head{padding:10px 16px;border-bottom:1px solid #f0e8d8;font-size:.9rem;font-weight:650;color:#6b6058}.ocr-card-body{padding:16px}.ocr-ctrl-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.ocr-ctrl{display:flex;align-items:center;gap:6px}.ocr-ctrl label{font-size:.82rem;color:#8a7e70;white-space:nowrap}.ocr-ctrl select,.ocr-ctrl input{background:#fefcf7;border:1px solid #d8cfc2;border-radius:6px;padding:5px 10px;font-size:.85rem;color:#3d3830;outline:none;font-family:inherit}.ocr-ctrl select:focus,.ocr-ctrl input:focus{border-color:#c89050}.ocr-ctrl input[type=number]{width:65px}.ocr-radio-label{font-size:.82rem;color:#8a7e70}.ocr-radio{display:inline-flex;align-items:center;gap:5px;font-size:.85rem;color:#3d3830;cursor:pointer;padding:6px 14px;border:1px solid #e8dfd2;border-radius:8px;background:#fefcf7;transition:all .15s}.ocr-radio:hover{border-color:#c89050}.ocr-radio input[type=radio]{accent-color:#c89050}.ocr-status-dot{margin-left:auto;font-size:.78rem;white-space:nowrap}.ocr-status-online{color:#4a7c4f}.ocr-status-offline{color:#b5a898}.ocr-table-cfg{margin-top:10px;padding:10px 12px;background:#faf6ee;border:1px solid #e8dfd2;border-radius:8px}.ocr-dropzone{border:2px dashed #e8dfd2;border-radius:10px;padding:24px;text-align:center;cursor:pointer;transition:all .2s}.ocr-dropzone:hover,.ocr-dropzone-over{border-color:#c89050;background:#c890500a}.ocr-drop-icon{font-size:2rem;margin-bottom:4px}.ocr-drop-text{font-size:.9rem;color:#8a7e70}.ocr-drop-hint{font-size:.78rem;color:#b5a898;margin-top:4px}.ocr-file-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px}.ocr-file-chip{display:flex;align-items:center;gap:6px;background:#faf6ee;border:1px solid #e8dfd2;border-radius:8px;padding:5px 10px;font-size:.82rem;color:#3d3830}.ocr-file-size{color:#b5a898;font-size:.75rem}.ocr-chip-btn{border:none;background:none;cursor:pointer;color:#b5a898;font-size:.75rem;padding:1px 4px;transition:color .15s}.ocr-chip-btn:hover{color:#6b6058}.ocr-chip-remove:hover{color:#c87068}.ocr-btn{padding:8px 18px;border-radius:8px;border:1px solid transparent;font-size:.88rem;font-weight:600;cursor:pointer;transition:all .15s;font-family:inherit}.ocr-btn:disabled{opacity:.45;cursor:not-allowed}.ocr-btn-go{background:#c89050;color:#fff;border-color:#b87848}.ocr-btn-go:hover:not(:disabled){background:#b87848}.ocr-btn-gray{background:#efe8db;color:#6b6058}.ocr-btn-gray:hover:not(:disabled){background:#e5dcc8}.ocr-badge{padding:5px 14px;border-radius:20px;font-size:.82rem;font-weight:550;background:#faf6ee;border:1px solid #e8dfd2}.ocr-badge[data-online="1"]{color:#4a7c4f}.ocr-badge[data-online="0"]{color:#b5a898}.ocr-two-col{display:flex;gap:14px}@media (max-width: 700px){.ocr-two-col{flex-direction:column}}.ocr-task-item{display:flex;align-items:center;gap:8px;padding:7px 10px;border-radius:6px;font-size:.82rem;margin-bottom:4px;background:#faf6ee;flex-wrap:wrap}.ocr-task-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#3d3830}.ocr-task-status{padding:2px 8px;border-radius:10px;font-size:.72rem;font-weight:600}.ocr-status-pending{background:#f5ead8;color:#b87848}.ocr-status-running{background:#dae4f0;color:#5078a0}.ocr-status-completed{background:#d8ebe0;color:#4a7c4f}.ocr-status-failed{background:#f0d8d8;color:#b84848}.ocr-status-cancelled{background:#ece8df;color:#9a9085}.ocr-task-actions{display:flex;gap:4px}.ocr-progress{width:100%;height:3px;background:#e8dfd2;border-radius:2px;margin-top:2px}.ocr-progress-fill{height:100%;background:#c89050;border-radius:2px;transition:width .3s}.ocr-log-box{background:#fefcf7;border:1px solid #e8dfd2;border-radius:14px;overflow:hidden;height:100%}.ocr-log-head{padding:8px 14px;background:#faf6ee;border-bottom:1px solid #f0e8d8;font-size:.85rem;font-weight:650;color:#6b6058;display:flex;justify-content:space-between;align-items:center}.ocr-log-body{padding:10px 14px;font-family:Cascadia Code,Consolas,monospace;font-size:.75rem;line-height:1.6;height:300px;overflow-y:auto;white-space:pre-wrap;word-break:break-all}.ocr-log-line{margin:0}.ocr-log-error{color:#b84848}.ocr-log-success{color:#4a7c4f}.ocr-log-warn{color:#b87848}.ocr-log-info{color:#5078a0}.ocr-result-item{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:6px;font-size:.82rem;margin-bottom:4px;background:#faf6ee}.ocr-dl-link{color:#c89050;text-decoration:none;font-size:.78rem;font-weight:600}.ocr-dl-link:hover{text-decoration:underline}.ocr-empty{color:#b5a898;font-size:.82rem;padding:12px 0;text-align:center}.ocr-scroll::-webkit-scrollbar{width:5px}.ocr-scroll::-webkit-scrollbar-track{background:transparent}.ocr-scroll::-webkit-scrollbar-thumb{background:#d8cfc2;border-radius:3px}
