.theme-gradient{background:linear-gradient(135deg,#0a8f7b,#11b59a)}:root{--brand-color:#0a8f7b;--brand-accent:#11b59a;--brand-fg:#0b3d36}.app-container{display:flex;min-height:100vh;padding:20px;gap:20px;background-color:#f5f7fa}@media (max-width:1024px){.app-container{flex-direction:column}.left-panel{max-width:100%}}@media (max-width:768px){.app-container{padding:12px;gap:12px}.top-controls{padding-bottom:12px}.upload-buttons{gap:8px}.right-panel{padding:14px 14px 12px}.brand-header{margin-bottom:10px}.ocr-results{max-height:calc(100vh - 180px)}}.left-panel{width:100%;max-width:800px;flex:none;display:flex;flex-direction:column;gap:20px;min-width:0;background-color:#fff;border-radius:4px;box-shadow:0 2px 4px rgba(0,0,0,.1);padding:20px}.top-controls{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;border-bottom:1px solid #ebeef5}.upload-buttons{display:flex;gap:10px;flex-wrap:wrap}.upload-buttons .el-button.el-button--success{background-color:var(--brand-color);border-color:var(--brand-color)}.upload-buttons .el-button.el-button--success:hover{filter:brightness(1.05)}.upload-tip{font-size:12px;color:#909399;margin-top:5px}.page-controls{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.page-info{min-width:80px;text-align:center;color:#606266;flex:none}.preview-scroll-container{flex:1;overflow-y:auto;overflow-x:hidden;min-height:0}.preview-scroll-container::-webkit-scrollbar{width:8px}.preview-scroll-container::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.preview-scroll-container::-webkit-scrollbar-thumb{background:#c0c4cc;border-radius:4px}.preview-scroll-container::-webkit-scrollbar-thumb:hover{background:#909399}.preview-container{justify-content:center;padding:10px;min-height:-moz-min-content;min-height:min-content}.image-preview,.preview-container pdf{max-width:100%;margin:0 auto}.image-preview{max-height:80vh;-o-object-fit:contain;object-fit:contain}.right-panel{flex:1;min-width:320px;background-color:#fff;border-radius:10px;padding:20px 20px 16px;overflow-y:auto;box-shadow:0 6px 24px rgba(0,0,0,.06);border:1px solid #eef2f5}.status-message{text-align:center;color:#909399;padding:20px 0}.status-message i{display:block;font-size:36px;margin-bottom:10px}.status-message.error{color:#f56c6c}.loading-text{margin:10px 0;font-size:16px}.loading-tip{margin-top:10px;font-size:14px;color:#909399;padding:10px;background-color:#f4f4f5;border-radius:4px}.ocr-results{display:flex;flex-direction:column;gap:12px;padding:8px 2px 8px 2px;max-height:calc(100vh - 140px);overflow-y:auto}.ocr-result-item{padding:12px 14px;border:1px solid #e8edf1;border-radius:8px;background-color:#fafcfd;cursor:pointer;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;word-break:break-all}.ocr-result-item:hover{transform:translateY(-2px);border-color:var(--brand-accent);box-shadow:0 8px 20px rgba(10,143,123,.08)}.result-text{color:#303133;line-height:1.5;word-break:break-word}.debug-info{position:sticky;top:0;background:rgba(10,143,123,.06);z-index:1;padding:10px 12px;margin-bottom:10px;border-radius:8px;border:1px solid rgba(10,143,123,.12);box-shadow:0 2px 10px rgba(0,0,0,.04);display:flex;align-items:center;justify-content:space-between;gap:12px}.debug-actions{display:flex;gap:8px;flex-wrap:wrap}.brand-header{justify-content:space-between;padding:10px 12px;margin-bottom:12px;border:1px solid rgba(10,143,123,.12);border-radius:10px;background:linear-gradient(135deg,rgba(10,143,123,.06),rgba(17,181,154,.06))}.brand-header,.brand-left{display:flex;align-items:center}.brand-left{gap:10px}.brand-logo{height:28px;width:auto}.brand-text{line-height:1.2}.brand-title{font-size:14px;font-weight:700;color:var(--brand-fg)}.brand-subtitle{font-size:12px;color:#909399}.brand-actions .el-button{padding:6px 10px}.panel-actions{display:flex;gap:8px;margin:6px 0 12px}.panel-actions .el-button{border-color:var(--brand-color);color:var(--brand-color)}.panel-actions .el-button:hover{background:var(--brand-color);color:#fff}.page-controls .el-button{border-color:var(--brand-color);color:var(--brand-color)}.page-controls .el-button:hover{background:var(--brand-color);color:#fff}.page-info{color:var(--brand-fg);font-weight:600}