@keyframes marching-ants{0%{background-position:0 0,0 100%,0 0,100% 0}to{background-position:20px 0,-20px 100%,0 -20px,100% 20px}}:root{--rc-drag-handle-size: 12px;--rc-drag-handle-mobile-size: 24px;--rc-drag-handle-bg-colour: rgba(0, 0, 0, .2);--rc-drag-bar-size: 6px;--rc-border-color: rgba(255, 255, 255, .7);--rc-focus-color: #0088ff}.ReactCrop{position:relative;display:inline-block;cursor:crosshair;max-width:100%}.ReactCrop *,.ReactCrop *:before,.ReactCrop *:after{box-sizing:border-box}.ReactCrop--disabled,.ReactCrop--locked{cursor:inherit}.ReactCrop__child-wrapper{overflow:hidden;max-height:inherit}.ReactCrop__child-wrapper>img,.ReactCrop__child-wrapper>video{display:block;max-width:100%;max-height:inherit}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>img,.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__child-wrapper>video{touch-action:none}.ReactCrop:not(.ReactCrop--disabled) .ReactCrop__crop-selection{touch-action:none}.ReactCrop__crop-mask{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;width:calc(100% + .5px);height:calc(100% + .5px)}.ReactCrop__crop-selection{position:absolute;top:0;left:0;transform:translateZ(0);cursor:move}.ReactCrop--disabled .ReactCrop__crop-selection{cursor:inherit}.ReactCrop--circular-crop .ReactCrop__crop-selection{border-radius:50%}.ReactCrop--circular-crop .ReactCrop__crop-selection:after{pointer-events:none;content:"";position:absolute;top:-1px;right:-1px;bottom:-1px;left:-1px;border:1px solid var(--rc-border-color);opacity:.3}.ReactCrop--no-animate .ReactCrop__crop-selection{outline:1px dashed white}.ReactCrop__crop-selection:not(.ReactCrop--no-animate .ReactCrop__crop-selection){animation:marching-ants 1s;background-image:linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to right,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%),linear-gradient(to bottom,#fff 50%,#444 50%);background-size:10px 1px,10px 1px,1px 10px,1px 10px;background-position:0 0,0 100%,0 0,100% 0;background-repeat:repeat-x,repeat-x,repeat-y,repeat-y;color:#fff;animation-play-state:running;animation-timing-function:linear;animation-iteration-count:infinite}.ReactCrop__crop-selection:focus{outline:2px solid var(--rc-focus-color);outline-offset:-1px}.ReactCrop--invisible-crop .ReactCrop__crop-mask,.ReactCrop--invisible-crop .ReactCrop__crop-selection{display:none}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after,.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{content:"";display:block;position:absolute;background-color:#fff6}.ReactCrop__rule-of-thirds-vt:before,.ReactCrop__rule-of-thirds-vt:after{width:1px;height:100%}.ReactCrop__rule-of-thirds-vt:before{left:33.3333333333%}.ReactCrop__rule-of-thirds-vt:after{left:66.6666666667%}.ReactCrop__rule-of-thirds-hz:before,.ReactCrop__rule-of-thirds-hz:after{width:100%;height:1px}.ReactCrop__rule-of-thirds-hz:before{top:33.3333333333%}.ReactCrop__rule-of-thirds-hz:after{top:66.6666666667%}.ReactCrop__drag-handle{position:absolute;width:var(--rc-drag-handle-size);height:var(--rc-drag-handle-size);background-color:var(--rc-drag-handle-bg-colour);border:1px solid var(--rc-border-color)}.ReactCrop__drag-handle:focus{background:var(--rc-focus-color)}.ReactCrop .ord-nw{top:0;left:0;transform:translate(-50%,-50%);cursor:nw-resize}.ReactCrop .ord-n{top:0;left:50%;transform:translate(-50%,-50%);cursor:n-resize}.ReactCrop .ord-ne{top:0;right:0;transform:translate(50%,-50%);cursor:ne-resize}.ReactCrop .ord-e{top:50%;right:0;transform:translate(50%,-50%);cursor:e-resize}.ReactCrop .ord-se{bottom:0;right:0;transform:translate(50%,50%);cursor:se-resize}.ReactCrop .ord-s{bottom:0;left:50%;transform:translate(-50%,50%);cursor:s-resize}.ReactCrop .ord-sw{bottom:0;left:0;transform:translate(-50%,50%);cursor:sw-resize}.ReactCrop .ord-w{top:50%;left:0;transform:translate(-50%,-50%);cursor:w-resize}.ReactCrop__disabled .ReactCrop__drag-handle{cursor:inherit}.ReactCrop__drag-bar{position:absolute}.ReactCrop__drag-bar.ord-n{top:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(-50%)}.ReactCrop__drag-bar.ord-e{right:0;top:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(50%)}.ReactCrop__drag-bar.ord-s{bottom:0;left:0;width:100%;height:var(--rc-drag-bar-size);transform:translateY(50%)}.ReactCrop__drag-bar.ord-w{top:0;left:0;width:var(--rc-drag-bar-size);height:100%;transform:translate(-50%)}.ReactCrop--new-crop .ReactCrop__drag-bar,.ReactCrop--new-crop .ReactCrop__drag-handle,.ReactCrop--fixed-aspect .ReactCrop__drag-bar,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-n,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-e,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-s,.ReactCrop--fixed-aspect .ReactCrop__drag-handle.ord-w{display:none}@media (pointer: coarse){.ReactCrop .ord-n,.ReactCrop .ord-e,.ReactCrop .ord-s,.ReactCrop .ord-w{display:none}.ReactCrop__drag-handle{width:var(--rc-drag-handle-mobile-size);height:var(--rc-drag-handle-mobile-size)}}.app{min-height:100vh;display:flex;flex-direction:column;transition:background-color .3s ease,color .3s ease}[data-theme=dark] .app{background:#0f172a;color:#e2e8f0}[data-theme=dark] .section-alt{background:#1e293b}[data-theme=dark] .section h2{color:#f1f5f9}[data-theme=dark] .code-block{background:#1e293b}[data-theme=dark] .feature-card{background:#1e293b;border-color:#334155;color:#e2e8f0}[data-theme=dark] .feature-card h3{color:#f1f5f9}[data-theme=dark] .feature-card p{color:#cbd5e1}[data-theme=dark] .demo-container{background:#1e293b;color:#e2e8f0}[data-theme=dark] .demo-tab{background:#334155;border-color:#475569;color:#cbd5e1}[data-theme=dark] .demo-tab:hover{border-color:#667eea;color:#667eea}[data-theme=dark] .result-display{background:#1e293b;color:#e2e8f0}[data-theme=dark] .result-display h3{color:#f1f5f9}[data-theme=dark] .result-text{background:#0f172a;border-color:#334155;color:#cbd5e1}[data-theme=dark] .result-text pre{color:#cbd5e1}[data-theme=dark] .confidence,[data-theme=dark] .time{background:#334155;color:#cbd5e1}[data-theme=high-contrast] .app{background:white;color:#000}[data-theme=high-contrast] .hero{background:black;color:#fff}[data-theme=high-contrast] .section h2{color:#000}[data-theme=high-contrast] .feature-card{border:3px solid black}[data-theme=high-contrast] .btn-primary,[data-theme=high-contrast] .demo-tab.active{background:black;color:#fff;border:3px solid black}.container{max-width:1200px;margin:0 auto;padding:0 2rem;width:100%}.hero{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;padding:4rem 0;position:relative}.hero-content{display:flex;justify-content:space-between;align-items:flex-start;gap:2rem}.hero-text{flex:1}.hero h1{font-size:3.5rem;font-weight:700;margin:0 0 1rem;line-height:1.2}.hero h1 .emoji{display:inline-block}.tagline{font-size:1.5rem;font-weight:500;margin:0 0 1rem;opacity:.95}.description{font-size:1.125rem;margin:0 0 2rem;opacity:.9;max-width:600px;line-height:1.6}.badges{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:2rem}.badge{display:inline-block;padding:.5rem 1rem;background:rgba(255,255,255,.2);border-radius:20px;font-size:.875rem;font-weight:500;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.3)}.cta-buttons{display:flex;gap:1rem;flex-wrap:wrap}.btn{display:inline-block;padding:.875rem 2rem;border-radius:8px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .3s ease;cursor:pointer;border:none}.btn-primary{background:white;color:#667eea}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 20px #0003}.btn-secondary{background:transparent;color:#fff;border:2px solid white}.btn-secondary:hover{background:white;color:#667eea}.theme-toggle{padding:.75rem;background:rgba(255,255,255,.2);border:1px solid rgba(255,255,255,.3);border-radius:50%;font-size:1.5rem;cursor:pointer;transition:all .3s ease;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);width:3.5rem;height:3.5rem;display:flex;align-items:center;justify-content:center;flex-shrink:0}.theme-toggle:hover{background:rgba(255,255,255,.3);transform:rotate(180deg)}.section{padding:4rem 0}.section-alt{background:#f8f9fa}.section h2{font-size:2.5rem;font-weight:700;margin:0 0 2rem;text-align:center;color:#1f2937}.code-block{background:#1f2937;border-radius:12px;overflow:hidden;margin-bottom:1.5rem;box-shadow:0 4px 20px #0000001a}.code-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;background:#111827;border-bottom:1px solid #374151}.code-header span{color:#9ca3af;font-size:.875rem;font-weight:500}.copy-btn{padding:.375rem .75rem;background:transparent;border:1px solid #374151;color:#9ca3af;border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:1rem}.copy-btn:hover{background:#374151;color:#fff}.code-block pre{margin:0;padding:1.5rem;overflow-x:auto}.code-block code{color:#e5e7eb;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,Courier New,monospace;font-size:.875rem;line-height:1.6}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:2rem;margin-top:3rem}.feature-card{background:white;padding:2rem;border-radius:12px;box-shadow:0 2px 10px #0000000d;transition:all .3s ease;border:1px solid #e5e7eb}.feature-card:hover{transform:translateY(-4px);box-shadow:0 8px 30px #0000001a}.feature-icon{font-size:2.5rem;margin-bottom:1rem}.feature-card h3{font-size:1.25rem;font-weight:600;margin:0 0 .5rem;color:#1f2937}.feature-card p{margin:0;color:#6b7280;line-height:1.6}.demo-tabs{display:flex;gap:.5rem;justify-content:center;margin-bottom:2rem}.demo-tab{padding:.875rem 2rem;background:white;border:2px solid #e5e7eb;color:#6b7280;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.demo-tab:hover{border-color:#667eea;color:#667eea}.demo-tab.active{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);border-color:transparent;color:#fff;box-shadow:0 4px 15px #667eea4d}.demo-container{background:white;border-radius:12px;padding:2rem;box-shadow:0 4px 20px #0000001a;margin-bottom:2rem}.result-display{background:white;border-radius:12px;padding:2rem;box-shadow:0 4px 20px #0000001a;margin-top:2rem}.result-display h3{font-size:1.5rem;font-weight:600;margin:0 0 1rem;color:#1f2937}.result-meta{display:flex;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.confidence,.time{padding:.5rem 1rem;background:#f3f4f6;border-radius:6px;font-size:.875rem;font-weight:500;color:#374151}.structured-data{background:linear-gradient(135deg,#e0f2fe 0%,#dbeafe 100%);border:1px solid #0ea5e9;border-radius:8px;padding:1.5rem;margin-bottom:1.5rem}.structured-data h4{font-size:1rem;font-weight:600;margin:0 0 1rem;color:#0c4a6e}.data-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:.75rem}.data-item{background:white;padding:.75rem;border-radius:6px;font-size:.875rem;border:1px solid rgba(14,165,233,.2);font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,monospace}.data-item strong{color:#0c4a6e}.result-text{background:#f9fafb;border:1px solid #e5e7eb;border-radius:8px;padding:1.5rem}.result-text pre{margin:0;color:#374151;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,monospace;font-size:.875rem;line-height:1.6;white-space:pre-wrap;word-break:break-word}.footer{background:#1f2937;color:#fff;padding:2rem 0;text-align:center;margin-top:auto}.footer p{margin:0 0 1rem;opacity:.8}.footer-links{display:flex;justify-content:center;align-items:center;gap:.75rem;flex-wrap:wrap}.footer-links a{color:#fff;text-decoration:none;font-weight:500;transition:opacity .2s ease}.footer-links a:hover{opacity:.7}.footer-links span{opacity:.5}.demo-container h3{font-size:1.25rem;font-weight:600;color:#1f2937;margin:0 0 1rem}.demo-container button{font-family:inherit;transition:all .2s ease}.demo-container button:not(.copy-btn):not(.demo-tab):not(.btn):not(.theme-toggle){padding:.75rem 1.5rem;border-radius:8px;font-weight:500;cursor:pointer;border:none;font-size:.9375rem}.demo-container button[class*=processButton],.demo-container button:has(+button[class*=clearButton]){background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);color:#fff;border:none;box-shadow:0 2px 8px #667eea4d}.demo-container button[class*=processButton]:hover,.demo-container button:has(+button[class*=clearButton]):hover{transform:translateY(-2px);box-shadow:0 4px 12px #667eea66}.demo-container button[class*=processButton]:disabled{opacity:.6;cursor:not-allowed;transform:none}.demo-container [class*=item]{border:1px solid #e5e7eb;border-radius:8px;padding:1rem;margin-bottom:.75rem;background:white;transition:all .2s ease}.demo-container [class*=item]:hover{box-shadow:0 2px 8px #00000014}.demo-container [class*=item][class*=completed]{background:linear-gradient(135deg,#ecfdf5 0%,#d1fae5 100%);border-color:#10b981}.demo-container [class*=item][class*=processing]{background:linear-gradient(135deg,#eff6ff 0%,#dbeafe 100%);border-color:#3b82f6;box-shadow:0 0 0 2px #3b82f61a}.demo-container [class*=item][class*=error]{background:linear-gradient(135deg,#fef2f2 0%,#fee2e2 100%);border-color:#ef4444}.demo-container [class*=status]{font-size:.75rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;padding:.25rem .625rem;border-radius:4px}.demo-container [class*=progressBar]{height:6px;background:#e5e7eb;border-radius:3px;overflow:hidden}.demo-container [class*=progressFill]{height:100%;background:linear-gradient(90deg,#667eea 0%,#764ba2 100%);border-radius:3px;transition:width .3s ease}.demo-container [class*=exportButton]{background:white;border:1px solid #e5e7eb;color:#6b7280;padding:.5rem 1rem;border-radius:6px;font-size:.8125rem;font-weight:600;text-transform:uppercase;letter-spacing:.5px;transition:all .2s ease}.demo-container [class*=exportButton]:hover{background:#667eea;border-color:#667eea;color:#fff;transform:translateY(-1px);box-shadow:0 2px 8px #667eea4d}.demo-container [class*=stats] span{padding:.375rem .75rem;border-radius:6px;font-size:.875rem;font-weight:500;background:#f3f4f6;color:#374151}.demo-container [class*=stats] [class*=success]{background:#d1fae5;color:#065f46}.demo-container [class*=stats] [class*=error]{background:#fee2e2;color:#991b1b}.demo-container button[class*=removeButton]{width:28px;height:28px;border-radius:6px;padding:0;display:flex;align-items:center;justify-content:center;color:#9ca3af;background:transparent;border:1px solid transparent}.demo-container button[class*=removeButton]:hover{background:#fee2e2;color:#dc2626;border-color:#fecaca}.demo-container [class*=structured]{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.demo-container [class*=structuredField]{background:#dbeafe;border:1px solid #93c5fd;color:#1e40af;padding:.375rem .625rem;border-radius:4px;font-size:.75rem;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,monospace}.demo-container [class*=previewText]{color:#4b5563;font-size:.875rem;line-height:1.5;padding:.75rem;background:#f9fafb;border-radius:6px;border:1px solid #e5e7eb;margin-top:.75rem;font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,Consolas,monospace;white-space:pre-wrap;word-break:break-word}@media (max-width: 768px){.container{padding:0 1.5rem}.hero{padding:3rem 0}.hero-content{flex-direction:column}.hero h1{font-size:2.5rem}.tagline{font-size:1.25rem}.description{font-size:1rem}.section{padding:3rem 0}.section h2{font-size:2rem}.features-grid{grid-template-columns:1fr;gap:1.5rem}.demo-tabs{flex-direction:column}.demo-tab{width:100%}.demo-container{padding:1.5rem}.cta-buttons{flex-direction:column}.btn{width:100%;text-align:center}}@media (max-width: 480px){.container{padding:0 1rem}.hero h1{font-size:2rem}.section h2{font-size:1.75rem}.feature-card{padding:1.5rem}}*{box-sizing:border-box}html{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.5}body{margin:0;padding:0;min-height:100vh;background-color:#f0f2f5}#root{min-height:100vh}h1,h2,h3,h4,h5,h6{margin:0;font-weight:600}p{margin:0}button{cursor:pointer;border:none;background:none;font-family:inherit}input,textarea{font-family:inherit}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:3px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#a1a1a1}*:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}@media print{.app-header,.app-footer{display:none}.app-main{padding:0}.result-card{break-inside:avoid;box-shadow:none;border:1px solid #ddd}}
