.drop-zone {
            border: 2px dashed var(--primary-color, #0d6efd);
            border-radius: 12px;
            background-color: rgba(13, 110, 253, 0.03);
            padding: 2rem 1rem;
            text-align: center;
            cursor: pointer;
            transition: all 0.2s ease;
            margin-bottom: 1.5rem;
        }
        .drop-zone.drag-over {
            background-color: rgba(13, 110, 253, 0.1);
            border-color: var(--accent-color, #0a58ca);
        }
        .file-info {
            font-size: 0.9rem;
            background: #f8f9fa;
            border-radius: 8px;
            padding: 0.75rem;
            margin: 1rem 0;
        }
        .meta-grid {
            display: grid;
            grid-template-columns: repeat(auto-fit, minmax(200px,1fr));
            gap: 0.75rem;
            background: #f8f9fa;
            border-radius: 12px;
            padding: 1rem;
            margin: 1rem 0;
        }
        .meta-item {
            font-size: 0.85rem;
        }
        .meta-label {
            font-weight: 600;
            color: #2c3e66;
        }
        .preview-canvas {
            border: 1px solid #dee2e6;
            border-radius: 8px;
            background: #fff;
            max-width: 100%;
            height: auto;
            box-shadow: 0 2px 6px rgba(0,0,0,0.05);
        }
        .extracted-text-container {
            background: #fef9e6;
            border-left: 4px solid var(--primary-color);
            max-height: 350px;
            overflow-y: auto;
            font-family: 'Segoe UI', 'Courier New', monospace;
            font-size: 0.85rem;
            padding: 1rem;
            border-radius: 8px;
        }
        .result-actions {
            display: flex;
            gap: 0.75rem;
            flex-wrap: wrap;
            align-items: center;
            margin: 1rem 0;
        }
        .format-selector {
            max-width: 180px;
        }
        .loader-overlay {
            display: inline-flex;
            align-items: center;
            gap: 0.5rem;
        }
        .privacy-badge {
            background: #e3f2fd;
            border-radius: 40px;
            padding: 0.25rem 0.75rem;
            font-size: 0.8rem;
            display: inline-block;
        }
        .example-pdf-hint {
            font-size: 0.8rem;
            color: #6c757d;
        }
        .canvas-container {
            text-align: center;
        }
        .text-muted.small-note {
            font-size: 0.75rem;
            margin-top: 0.25rem;
        }
pre{white-space:pre-wrap;}