.elementor-2021 .elementor-element.elementor-element-1dd87d1{--display:flex;}/* Start custom CSS for html, class: .elementor-element-c215f9c */* { margin: 0; padding: 0; box-sizing: border-box; }
        body {
            background: linear-gradient(145deg, #f0f4fa 0%, #e6ecf3 100%);
            font-family: 'Inter', system-ui, -apple-system, 'Segoe UI', Roboto, Helvetica, sans-serif;
            padding: 2rem 1.5rem;
            min-height: 100vh;
        }
        .ocr-card {
            max-width: 1300px;
            width: 100%;
            margin: 0 auto;
            background: rgba(255, 255, 255, 0.96);
            border-radius: 2rem;
            box-shadow: 0 25px 45px -12px rgba(0, 0, 0, 0.25);
            overflow: hidden;
        }
        .header {
            background: #ffffff;
            padding: 1.6rem 2rem;
            border-bottom: 1px solid #eef2f8;
        }
        .header h1 {
            font-size: 1.9rem;
            font-weight: 700;
            background: linear-gradient(135deg, #1e2b3c, #2c4c6c);
            background-clip: text;
            -webkit-background-clip: text;
            color: transparent;
        }
        .header p { color: #5b6e8c; margin-top: 0.4rem; font-size: 0.9rem; }
        .content { padding: 2rem; }
        .upload-area {
            background: #f8fafd;
            border: 2px dashed #cfddee;
            border-radius: 1.5rem;
            padding: 2rem;
            text-align: center;
            cursor: pointer;
            transition: 0.2s;
            margin-bottom: 2rem;
        }
        .upload-area:hover, .upload-area.drag-active { background: #f0f7fe; border-color: #2c6e9e; }
        .upload-icon { font-size: 3rem; margin-bottom: 0.5rem; }
        .upload-text { font-size: 1rem; color: #2c4c6c; font-weight: 500; }
        .file-name { margin-top: 0.5rem; font-size: 0.8rem; color: #5b6e8c; }
        .preview-section {
            display: flex;
            flex-wrap: wrap;
            gap: 2rem;
            margin-bottom: 2rem;
        }
        .image-panel, .result-panel {
            background: white;
            border-radius: 1.5rem;
            border: 1px solid #eef2f8;
            padding: 1rem;
        }
        .image-panel { flex: 1; min-width: 250px; }
        .result-panel { flex: 1.5; min-width: 300px; display: flex; flex-direction: column; }
        .panel-title {
            font-weight: 700;
            font-size: 1rem;
            margin-bottom: 0.8rem;
            color: #1e2f3f;
            display: flex;
            align-items: center;
            gap: 8px;
        }
        .image-container {
            display: flex;
            justify-content: center;
            align-items: center;
            min-height: 280px;
            background: #fefefe;
            border-radius: 1rem;
            overflow: hidden;
        }
        .preview-img { max-width: 100%; max-height: 350px; object-fit: contain; border-radius: 12px; }
        .placeholder-text { color: #a0b3ce; text-align: center; font-size: 0.9rem; padding: 2rem; }
        .ocr-output {
            background: #f9fbfe;
            border-radius: 1rem;
            padding: 1rem;
            min-height: 280px;
            max-height: 400px;
            overflow-y: auto;
            font-family: monospace;
            font-size: 0.85rem;
            white-space: pre-wrap;
            word-break: break-word;
            border: 1px solid #eef2f8;
            margin-bottom: 1rem;
        }
        .button-group { display: flex; gap: 12px; flex-wrap: wrap; margin-top: auto; }
        button {
            background: #1f5e8c;
            border: none;
            color: white;
            padding: 8px 20px;
            border-radius: 40px;
            font-weight: 600;
            font-size: 0.85rem;
            cursor: pointer;
            transition: 0.2s;
        }
        button:hover:not(:disabled) { background: #0e4a70; transform: translateY(-1px); }
        .primary-btn { background: #2c7a4d; }
        .primary-btn:hover:not(:disabled) { background: #1f5a38; }
        button:disabled { background: #a0c4b0; cursor: not-allowed; }
        .progress-area { margin: 1rem 0; display: none; }
        .progress-bar {
            width: 100%;
            background: #e2e8f0;
            border-radius: 20px;
            height: 6px;
            overflow: hidden;
        }
        .progress-fill {
            width: 0%;
            height: 100%;
            background: #2c6e9e;
            transition: width 0.2s;
        }
        .status-text { font-size: 0.75rem; margin-top: 6px; color: #2c6e9e; }
        .info-note {
            font-size: 0.7rem;
            color: #5e7b9c;
            background: #f4f9fe;
            padding: 8px 14px;
            border-radius: 30px;
            margin-top: 1rem;
            text-align: center;
        }
        .error-note { background: #ffe6e5; color: #b91c1c; }
        .badge {
            background: #eef2fa;
            padding: 2px 8px;
            border-radius: 30px;
            font-size: 0.7rem;
        }
        footer {
            padding: 1rem;
            text-align: center;
            font-size: 0.7rem;
            color: #7c93ae;
            border-top: 1px solid #eef2f8;
            background: white;
        }
        @media (max-width: 780px) { body { padding: 1rem; } .content { padding: 1rem; } }/* End custom CSS */