:root{--eic-color-primary:#3b82f6;--eic-color-primary-dark:#2563eb;--eic-color-primary-darker:#1d4ed8;--eic-color-success:#16a34a;--eic-color-success-dark:#15803d;--eic-color-warning:#d97706;--eic-color-warning-light:#f59e0b;--eic-color-error:#dc2626;--eic-color-error-dark:#b91c1c;--eic-color-danger:#ef4444;--eic-color-danger-dark:#dc2626;--eic-color-ai:#7c3aed;--eic-color-ai-light:#a855f7;--eic-color-success-darker:#166534;--eic-color-accept:#059669;--eic-color-accept-light:#10b981;--eic-bg-primary:#ffffff;--eic-bg-secondary:#f8fafc;--eic-bg-tertiary:#f1f5f9;--eic-bg-hover:#e5e7eb;--eic-bg-card:#ffffff;--eic-bg-code:#1e293b;--eic-text-primary:#374151;--eic-text-secondary:#6b7280;--eic-text-muted:#9ca3af;--eic-text-heading:#1e3a5f;--eic-border-color:#e5e7eb;--eic-border-color-light:#f3f4f6;--eic-shadow-sm:0 2px 10px rgba(0, 0, 0, 0.08);--eic-shadow-md:0 8px 25px rgba(59, 130, 246, 0.15);--eic-shadow-lg:0 25px 50px rgba(0, 0, 0, 0.25);--eic-dropzone-bg:linear-gradient(135deg, #f8fafc 0%, #e8f0f8 100%);--eic-dropzone-bg-hover:linear-gradient(135deg, #eff6ff 0%, #dbeafe 100%)}@media (prefers-color-scheme:dark){:root{--eic-color-primary:#60a5fa;--eic-color-primary-dark:#3b82f6;--eic-color-primary-darker:#2563eb;--eic-color-success:#4ade80;--eic-color-success-dark:#22c55e;--eic-color-warning:#fbbf24;--eic-color-warning-light:#fcd34d;--eic-color-error:#f87171;--eic-color-error-dark:#ef4444;--eic-color-danger:#f87171;--eic-color-danger-dark:#ef4444;--eic-color-ai:#a78bfa;--eic-color-ai-light:#c4b5fd;--eic-color-success-darker:#16a34a;--eic-color-accept:#34d399;--eic-color-accept-light:#6ee7b7;--eic-bg-primary:#1e293b;--eic-bg-secondary:#0f172a;--eic-bg-tertiary:#334155;--eic-bg-hover:#475569;--eic-bg-card:#1e293b;--eic-bg-code:#0f172a;--eic-text-primary:#e2e8f0;--eic-text-secondary:#94a3b8;--eic-text-muted:#64748b;--eic-text-heading:#f1f5f9;--eic-border-color:#475569;--eic-border-color-light:#334155;--eic-shadow-sm:0 2px 10px rgba(0, 0, 0, 0.3);--eic-shadow-md:0 8px 25px rgba(0, 0, 0, 0.4);--eic-shadow-lg:0 25px 50px rgba(0, 0, 0, 0.5);--eic-dropzone-bg:linear-gradient(135deg, #1e293b 0%, #0f172a 100%);--eic-dropzone-bg-hover:linear-gradient(135deg, #1e3a5f 0%, #1e40af 100%);--eic-result-bg:rgba(34, 197, 94, 0.1);--eic-result-border:rgba(34, 197, 94, 0.3);--eic-error-bg:rgba(239, 68, 68, 0.1);--eic-error-border:rgba(239, 68, 68, 0.3)}}.eic-container{margin:0 auto;padding:20px;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Oxygen-Sans,Ubuntu,Cantarell,"Helvetica Neue",sans-serif}.eic-title{text-align:center;margin-bottom:30px;color:var(--eic-text-heading);font-size:1.8em}.eic-dropzone{border:3px dashed var(--eic-border-color);padding:1rem;text-align:center;cursor:pointer;transition:all 0.3s ease}.eic-dropzone:hover,.eic-dropzone.dragover,.eic-dropzone.eic-touch-active{border-color:var(--eic-color-primary);border-style:solid}.eic-drag-overlay{position:fixed;inset:0;background:rgb(79 70 229 / .1);backdrop-filter:blur(4px);z-index:9999;display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:opacity 0.2s ease,visibility 0.2s ease;pointer-events:none}.eic-drag-overlay.active{opacity:1;visibility:visible;pointer-events:auto;border:4px dashed var(--eic-color-primary)}.eic-drag-overlay-content{background:var(--eic-bg-card);border:3px dashed var(--eic-color-primary);border-radius:24px;padding:60px 80px;text-align:center;animation:eic-pulse-border 1.5s ease-in-out infinite;box-shadow:var(--eic-shadow-lg)}@keyframes eic-pulse-border{0%,100%{border-color:var(--eic-color-primary);transform:scale(1)}50%{border-color:var(--eic-color-success);transform:scale(1.02)}}.eic-drag-overlay-icon{width:80px;height:80px;margin-bottom:20px;color:var(--eic-color-primary);animation:eic-bounce 1s ease-in-out infinite}@keyframes eic-bounce{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}.eic-drag-overlay-text{font-size:1.5em;font-weight:600;color:var(--eic-text-primary);margin:0 0 8px 0}.eic-drag-overlay-subtext{font-size:1em;color:var(--eic-text-secondary);margin:0}@media (hover:none) and (pointer:coarse){.eic-dropzone{cursor:pointer;-webkit-tap-highlight-color:#fff0}.eic-dropzone:active,.eic-dropzone.eic-touch-active{transform:scale(.98);transition:transform 0.1s ease}}.eic-dropzone-icon{width:64px;height:64px;margin-bottom:20px;color:var(--eic-text-secondary);transition:color 0.3s ease}.eic-dropzone:hover .eic-dropzone-icon,.eic-dropzone.dragover .eic-dropzone-icon,.eic-dropzone.eic-touch-active .eic-dropzone-icon{color:var(--eic-color-primary)}.eic-dropzone-text{font-size:1.3em;font-weight:600;margin:0 0 8px 0}.eic-dropzone-subtext{font-size:.95em;color:var(--eic-text-secondary);margin:0 0 15px 0}.eic-dropzone-formats{font-size:.85em;color:var(--eic-text-muted);margin:0;padding:10px 20px;background:var(--eic-bg-primary);display:inline-block;opacity:.9}.eic-dropzone-hint{display:none;font-size:.8em;color:var(--eic-text-muted);margin:8px 0 0 0;opacity:.7;font-style:italic}.eic-unmatched-warning{margin-top:15px;padding:12px 16px;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border:1px solid var(--eic-color-warning);border-radius:8px;font-size:.9em;color:#92400e}.eic-unmatched-warning p{margin:0 0 4px 0}.eic-unmatched-warning p:last-child{margin-bottom:0;font-weight:500}@media (prefers-color-scheme:dark){.eic-unmatched-warning{background:linear-gradient(135deg,#451a03 0%,#78350f 100%);border-color:#fbbf24;color:#fde68a}}.eic-file-list{margin-top:30px;background:var(--eic-bg-primary);padding:20px;box-shadow:var(--eic-shadow-sm)}.eic-file-list h3{margin:0 0 15px 0!important;color:var(--eic-text-heading);font-size:1.1em}.eic-file-list ul{list-style:none;padding:0;margin:0}.eic-file-list li{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;background:var(--eic-bg-secondary);border-radius:8px;margin-bottom:8px;transition:background 0.2s ease}.eic-file-list li:hover{background:var(--eic-bg-tertiary)}.eic-file-list li:last-child{margin-bottom:0}.eic-file-grouped{border-left:3px solid var(--eic-color-primary)}.eic-file-grouped-first{margin-bottom:1px;border-bottom-left-radius:0;border-bottom-right-radius:0}.eic-file-grouped-middle{margin-bottom:1px;border-radius:0}.eic-file-grouped-last{border-top-left-radius:0;border-top-right-radius:0}.eic-file-info{display:flex;align-items:center;gap:12px;flex:1}.eic-file-icon{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border-radius:8px;font-weight:700;font-size:.7em;text-transform:uppercase}.eic-file-icon.cii{background:#dbeafe;color:#1d4ed8}.eic-file-icon.ubl{background:#dcfce7;color:#16a34a}.eic-file-icon.facturx{background:#fef3c7;color:#d97706}.eic-file-icon.unknown{background:#f3f4f6;color:#6b7280}@media (prefers-color-scheme:dark){.eic-file-icon.cii{background:#1e3a8a;color:#93c5fd}.eic-file-icon.ubl{background:#14532d;color:#86efac}.eic-file-icon.facturx{background:#78350f;color:#fcd34d}.eic-file-icon.unknown{background:var(--eic-bg-tertiary);color:var(--eic-text-muted)}}.eic-file-name{font-weight:500;color:var(--eic-text-primary)}.eic-file-format{font-size:.85em;color:var(--eic-text-secondary);padding:3px 10px;background:var(--eic-bg-hover);border-radius:12px}.eic-pdf-type-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;font-size:.75em;font-weight:500;margin-left:6px}.eic-pdf-editable{background:#dcfce7;color:#166534}.eic-pdf-scanned{background:#fef3c7;color:#92400e}@media (prefers-color-scheme:dark){.eic-pdf-editable{background:#14532d;color:#86efac}.eic-pdf-scanned{background:#78350f;color:#fcd34d}}.eic-cius-badge{display:inline-flex;align-items:center;gap:4px;padding:2px 8px;border-radius:4px;font-size:.7em;font-weight:600;margin-left:6px;text-transform:uppercase;letter-spacing:.02em}.eic-cius-xrechnung{background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);color:#92400e;border:1px solid #f59e0b}.eic-cius-fatturapa{background:linear-gradient(135deg,#dcfce7 0%,#bbf7d0 100%);color:#166534;border:1px solid #22c55e}.eic-cius-peppol{background:linear-gradient(135deg,#dbeafe 0%,#bfdbfe 100%);color:#1e40af;border:1px solid #3b82f6}.eic-cius-facturx,.eic-cius-zugferd{background:linear-gradient(135deg,#f3e8ff 0%,#e9d5ff 100%);color:#7c3aed;border:1px solid #8b5cf6}@media (prefers-color-scheme:dark){.eic-cius-xrechnung{background:linear-gradient(135deg,#78350f 0%,#92400e 100%);color:#fde68a;border-color:#d97706}.eic-cius-fatturapa{background:linear-gradient(135deg,#14532d 0%,#166534 100%);color:#86efac;border-color:#16a34a}.eic-cius-peppol{background:linear-gradient(135deg,#1e3a8a 0%,#1e40af 100%);color:#93c5fd;border-color:#2563eb}.eic-cius-facturx,.eic-cius-zugferd{background:linear-gradient(135deg,#4c1d95 0%,#5b21b6 100%);color:#c4b5fd;border-color:#7c3aed}}.eic-file-remove{background:none;border:none;color:var(--eic-color-error);cursor:pointer;padding:5px;border-radius:4px;transition:background 0.2s ease}.eic-file-remove:hover{background:rgb(239 68 68 / .1)}.eic-options{margin-top:25px;display:flex;align-items:center;gap:15px;flex-wrap:wrap;padding:20px;background:var(--eic-bg-primary);box-shadow:var(--eic-shadow-sm);font-size:1rem}.eic-options label{font-weight:500;color:var(--eic-text-primary)}.eic-options select{padding:10px 15px;border:2px solid var(--eic-border-color);border-radius:8px;font-size:1em;background:var(--eic-bg-primary);color:var(--eic-text-primary);cursor:pointer;transition:border-color 0.2s ease}.eic-options select:focus{outline:none;border-color:var(--eic-color-primary)}.eic-button{padding:12px 24px;border:none;border-radius:8px;font-size:1em;font-weight:600;cursor:pointer;transition:all 0.2s ease}.eic-button-primary{background:linear-gradient(135deg,var(--eic-color-primary) 0%,var(--eic-color-primary-dark) 100%);color:#fff}.eic-button-primary:hover{background:linear-gradient(135deg,var(--eic-color-primary-dark) 0%,var(--eic-color-primary-darker) 100%);transform:translateY(-1px);box-shadow:0 4px 12px rgb(37 99 235 / .3)}.eic-button-primary:disabled{background:var(--eic-text-muted);cursor:not-allowed;transform:none;box-shadow:none}.eic-button-secondary{background:var(--eic-bg-secondary);color:var(--eic-text-primary)}.eic-button-secondary:hover{background:var(--eic-bg-hover)}.eic-button-danger{background:linear-gradient(135deg,var(--eic-color-danger) 0%,var(--eic-color-danger-dark) 100%);color:#fff;margin-left:8px}.eic-button-danger:hover{background:linear-gradient(135deg,var(--eic-color-danger-dark) 0%,var(--eic-color-error-dark) 100%);transform:translateY(-1px);box-shadow:0 4px 12px rgb(220 38 38 / .3)}.eic-button-warning{background:linear-gradient(135deg,var(--eic-color-warning-light) 0%,var(--eic-color-warning) 100%);color:#fff}.eic-button-warning:hover{background:linear-gradient(135deg,#d97706 0%,#b45309 100%)}.eic-spinner{animation:eic-spin 1s linear infinite}@keyframes eic-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.eic-facturx-header,.eic-imagex-header{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:8px}.eic-facturx-header h4,.eic-imagex-header h4{margin:0}.eic-progress{margin-top:25px;padding:20px;background:var(--eic-bg-primary);border-radius:12px;box-shadow:var(--eic-shadow-sm)}.eic-progress-bar{height:8px;background:var(--eic-border-color);border-radius:4px;overflow:hidden}.eic-progress-fill{height:100%;background:linear-gradient(90deg,var(--eic-color-primary) 0%,#8b5cf6 100%);border-radius:4px;transition:width 0.3s ease;width:0%}#eic-progress-text{margin:12px 0 0 0;text-align:center;color:var(--eic-text-secondary);font-size:.95em}.eic-progress-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px}.eic-progress-step{font-size:.85em;font-weight:500;color:var(--eic-color-primary);display:flex;align-items:center;gap:6px}.eic-progress-step::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--eic-color-primary);animation:eic-pulse 1s ease-in-out infinite}@keyframes eic-pulse{0%,100%{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.eic-progress-time{font-size:.8em;color:var(--eic-text-muted);font-variant-numeric:tabular-nums}.eic-button.eic-history-btn{padding:10px 12px;min-width:auto}.eic-history-icon{font-size:1.1em}.eic-history-panel{margin-top:20px;background:var(--eic-bg-primary);border-radius:12px;box-shadow:var(--eic-shadow-md);border:1px solid var(--eic-border-color);overflow:hidden}.eic-history-header{display:flex;justify-content:space-between;align-items:center;padding:15px 20px;border-bottom:1px solid var(--eic-border-color);background:var(--eic-bg-secondary)}.eic-history-header h4{margin:0;font-size:1em;font-weight:600;color:var(--eic-text-primary)}.eic-history-close{background:none;border:none;font-size:1.5em;cursor:pointer;color:var(--eic-text-muted);padding:0;line-height:1}.eic-history-close:hover{color:var(--eic-text-primary)}.eic-history-content{max-height:300px;overflow-y:auto;padding:10px}.eic-history-empty{text-align:center;color:var(--eic-text-muted);padding:30px;margin:0}.eic-history-item{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;border-radius:8px;margin-bottom:8px;background:var(--eic-bg-secondary);transition:background 0.2s ease}.eic-history-item:hover{background:var(--eic-bg-hover)}.eic-history-item:last-child{margin-bottom:0}.eic-history-item-info{flex:1;min-width:0}.eic-history-item-name{font-weight:500;color:var(--eic-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:.9em}.eic-history-item-meta{display:flex;gap:10px;font-size:.8em;color:var(--eic-text-muted);margin-top:4px}.eic-history-item-format{display:inline-flex;align-items:center;gap:4px}.eic-history-item-valid{color:var(--eic-color-success)}.eic-history-item-invalid{color:var(--eic-color-error)}.eic-history-footer{padding:12px 20px;border-top:1px solid var(--eic-border-color);text-align:right}.eic-button-small{padding:6px 12px;font-size:.85em}.eic-results{margin-top:25px;background:var(--eic-bg-primary);border-radius:12px;padding:20px;box-shadow:var(--eic-shadow-sm)}.eic-results h3{margin:0 0 15px 0;color:var(--eic-color-success);font-size:1.1em}.eic-results ul{list-style:none;padding:0;margin:0 0 20px 0}.eic-results li{display:flex;align-items:center;justify-content:space-between;padding:12px 15px;background:var(--eic-result-bg,#f0fdf4);border-radius:8px;margin-bottom:8px;border:1px solid var(--eic-result-border,#bbf7d0)}.eic-results li:last-child{margin-bottom:0}.eic-result-info{display:flex;align-items:center;gap:12px}.eic-result-icon{color:var(--eic-color-success)}.eic-result-name{font-weight:500;color:var(--eic-text-primary)}.eic-download-btn{padding:8px 16px;background:var(--eic-color-success);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9em;font-weight:500;transition:background 0.2s ease}.eic-download-btn:hover{background:var(--eic-color-success-dark)}#eic-download-all-btn{margin-top:15px}.eic-error{margin-top:25px;padding:15px 20px;background:var(--eic-error-bg,#fef2f2);border:1px solid var(--eic-error-border,#fecaca);color:var(--eic-color-error)}.eic-error p{margin:0}@keyframes pulse{0%,100%{opacity:1}50%{opacity:.6}}.eic-processing{animation:pulse 1.5s ease-in-out infinite}.eic-file-actions{display:flex;gap:8px;align-items:center}.eic-file-preview,.eic-file-remove{background:none;border:none;cursor:pointer;padding:6px;border-radius:6px;transition:background 0.2s ease;display:flex;align-items:center;justify-content:center}.eic-file-preview{color:var(--eic-text-secondary)}.eic-file-preview:hover{background:var(--eic-bg-hover);color:var(--eic-text-primary)}.eic-file-remove{color:var(--eic-color-error)}.eic-file-remove:hover{background:var(--eic-error-bg,#fee2e2)}.eic-validation-ok{color:var(--eic-color-success);font-weight:600;margin-left:8px}.eic-validation-error{color:var(--eic-color-error);font-weight:600;margin-left:8px}.eic-validation-warning{color:var(--eic-color-warning)}.eic-result-actions{display:flex;gap:8px}.eic-preview-modal{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:20px}.eic-preview-backdrop{position:absolute;top:0;left:0;right:0;bottom:0;background:rgb(0 0 0 / .5);backdrop-filter:blur(4px)}.eic-preview-container{position:relative;background:var(--eic-bg-primary);border-radius:16px;max-width:800px;width:100%;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--eic-shadow-lg)}.eic-preview-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid var(--eic-border-color);background:var(--eic-bg-secondary)}.eic-preview-header h3{margin:0;color:var(--eic-text-heading);font-size:1.2em}.eic-preview-close{background:none;border:none;font-size:28px;color:var(--eic-text-secondary);cursor:pointer;line-height:1;padding:0;transition:color 0.2s ease}.eic-preview-close:hover{color:var(--eic-text-primary)}.eic-preview-content{padding:25px;overflow-y:auto;flex:1}.eic-preview-section{margin-bottom:25px}.eic-preview-section:last-child{margin-bottom:0}.eic-preview-section h4{margin:0 0 12px 0;color:var(--eic-text-heading);font-size:1em;padding-bottom:8px;border-bottom:2px solid var(--eic-border-color)}.eic-preview-table{width:100%;border-collapse:collapse;font-size:1rem}.eic-preview-table td,.eic-preview-table th{padding:10px 12px;text-align:left;border-bottom:1px solid var(--eic-border-color)}.eic-preview-table td:first-child{color:var(--eic-text-secondary);width:40%}.eic-preview-table td:last-child{color:var(--eic-text-primary);font-weight:500}.eic-preview-lines th{background:var(--eic-bg-secondary);font-weight:600;color:var(--eic-text-primary)}.eic-preview-lines td{color:var(--eic-text-primary);font-weight:400}.eic-preview-lines td:first-child{width:auto}.eic-preview-parties{display:grid;grid-template-columns:1fr 1fr;gap:20px}.eic-preview-party{background:var(--eic-bg-secondary);padding:15px;border-radius:8px}.eic-preview-party h4{margin:0 0 10px 0;border-bottom:none;padding-bottom:0}.eic-preview-party p{margin:0 0 5px 0;font-size:.95em;color:var(--eic-text-primary)}.eic-preview-validation{background:var(--eic-bg-secondary);padding:15px;border-radius:8px}.eic-preview-validation h4{border-bottom:none;padding-bottom:0;margin-bottom:10px}.eic-preview-validation p{margin:5px 0}.eic-preview-validation .eic-validation-ok{color:#16a34a;margin-left:0}.eic-preview-validation .eic-validation-error{color:#dc2626;margin-left:0}.eic-preview-validation .eic-validation-warning{color:#d97706;margin-left:0}.eic-preview-tabs{display:flex;gap:0;border-bottom:2px solid var(--eic-border-color);margin-bottom:20px}.eic-preview-tab{padding:12px 24px;border:none;background:none;cursor:pointer;font-size:1em;font-weight:500;color:var(--eic-text-secondary);position:relative;transition:color 0.2s ease}.eic-preview-tab:hover{color:var(--eic-text-primary)}.eic-preview-tab.active{color:var(--eic-color-primary)}.eic-preview-tab.active::after{content:'';position:absolute;bottom:-2px;left:0;right:0;height:2px;background:var(--eic-color-primary)}.eic-preview-tab:focus{outline:2px solid var(--eic-color-primary);outline-offset:-2px}.eic-preview-panel{display:none}.eic-preview-panel.active{display:block}.eic-pdf-viewer{display:none;flex-direction:column;height:100%}.eic-pdf-viewer.active{display:flex}.eic-pdf-toolbar{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px;background:var(--eic-bg-secondary);border-radius:8px;margin-bottom:10px}.eic-pdf-page-info{font-size:.9em;color:var(--eic-text-secondary);min-width:100px;text-align:center}.eic-pdf-zoom-level{font-size:.85em;color:var(--eic-text-secondary);min-width:50px;text-align:center}.eic-pdf-canvas-container{flex:1;overflow:auto;background:var(--eic-bg-secondary);border-radius:8px;padding:20px;display:flex;justify-content:center;max-height:500px}#eic-pdf-canvas{box-shadow:var(--eic-shadow-md);background:#fff}.eic-xml-toolbar{display:flex;justify-content:flex-end;margin-bottom:10px}.eic-xml-content{background:var(--eic-bg-code);color:#e2e8f0;padding:15px;border-radius:8px;overflow-x:auto;font-family:'Monaco','Menlo','Ubuntu Mono',monospace;font-size:1rem;line-height:1.6;max-height:500px;overflow-y:auto;text-align:left}.eic-xml-content code{white-space:pre}.eic-xml-tag{color:#f472b6}.eic-xml-attr{color:#a5b4fc}.eic-xml-value{color:#86efac}.eic-xml-comment{color:#6b7280;font-style:italic}.eic-xml-pi{color:#fbbf24}.eic-copy-xml{display:inline-flex;align-items:center;gap:6px;padding:8px 12px;font-size:.9em}.eic-copy-xml svg{flex-shrink:0}.eic-skip-link{position:absolute;top:-40px;left:0;background:#3b82f6;color:#fff;padding:8px 16px;z-index:10001;text-decoration:none;border-radius:0 0 4px 0;transition:top 0.2s ease}.eic-skip-link:focus{top:0}.eic-button:focus-visible,.eic-file-preview:focus-visible,.eic-file-remove:focus-visible,.eic-download-btn:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}.eic-sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.eic-comparison-container{display:grid;grid-template-columns:1fr 1fr;gap:15px;height:100%}.eic-comparison-pane{display:flex;flex-direction:column;min-height:0}.eic-comparison-pane h4{margin:0 0 10px 0;color:var(--eic-text-heading);font-size:.95em;padding:8px 12px;background:var(--eic-bg-secondary);border-radius:6px 6px 0 0}.eic-comparison-pane .eic-xml-content{flex:1;margin:0;border-radius:0 0 6px 6px;max-height:400px}.eic-diff-stats{display:flex;gap:16px;padding:10px 15px;background:var(--eic-bg-secondary);border-radius:8px;margin-bottom:12px;font-size:.85em}.eic-diff-stat{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:4px;font-weight:500}.eic-diff-stat-added{background:#dcfce7;color:#166534}.eic-diff-stat-removed{background:#fee2e2;color:#991b1b}.eic-diff-stat-unchanged{background:var(--eic-bg-tertiary);color:var(--eic-text-secondary)}@media (prefers-color-scheme:dark){.eic-diff-stat-added{background:#14532d;color:#86efac}.eic-diff-stat-removed{background:#450a0a;color:#fca5a5}}.eic-diff-container{display:grid;grid-template-columns:1fr 1fr;gap:2px;background:var(--eic-border-color);border-radius:8px;overflow:hidden;height:calc(100% - 70px);min-height:300px}.eic-diff-pane{display:flex;flex-direction:column;background:var(--eic-bg-primary);min-height:0}.eic-diff-header{padding:8px 12px;background:var(--eic-bg-secondary);font-weight:600;font-size:.85em;color:var(--eic-text-heading);border-bottom:1px solid var(--eic-border-color)}.eic-diff-content-wrap{flex:1;overflow:auto;font-family:'SF Mono','Monaco','Inconsolata','Fira Mono',monospace;font-size:.8em;line-height:1.5}.eic-diff-line{display:flex;align-items:stretch;min-height:1.5em}.eic-diff-linenum{display:inline-block;min-width:40px;padding:0 8px;text-align:right;color:var(--eic-text-muted);background:var(--eic-bg-secondary);user-select:none;border-right:1px solid var(--eic-border-color)}.eic-diff-marker{display:inline-block;width:16px;text-align:center;font-weight:700}.eic-diff-content{flex:1;padding:0 8px;white-space:pre;overflow-x:auto}.eic-diff-equal{background:var(--eic-bg-primary)}.eic-diff-added{background:#dcfce7}.eic-diff-added .eic-diff-marker{color:#166534}.eic-diff-added .eic-diff-linenum{background:#bbf7d0;color:#166534}.eic-diff-removed{background:#fee2e2}.eic-diff-removed .eic-diff-marker{color:#991b1b}.eic-diff-removed .eic-diff-linenum{background:#fecaca;color:#991b1b}.eic-diff-placeholder{background:var(--eic-bg-tertiary);opacity:.5}@media (prefers-color-scheme:dark){.eic-diff-added{background:rgb(34 197 94 / .15)}.eic-diff-added .eic-diff-linenum{background:rgb(34 197 94 / .25);color:#86efac}.eic-diff-added .eic-diff-marker{color:#86efac}.eic-diff-removed{background:rgb(239 68 68 / .15)}.eic-diff-removed .eic-diff-linenum{background:rgb(239 68 68 / .25);color:#fca5a5}.eic-diff-removed .eic-diff-marker{color:#fca5a5}}@media (max-width:800px){.eic-diff-container{grid-template-columns:1fr}.eic-diff-stats{flex-wrap:wrap;gap:8px}}.eic-compare-btn,.eic-report-btn{padding:8px 10px;display:inline-flex;align-items:center;justify-content:center}.eic-compare-btn svg,.eic-report-btn svg{width:16px;height:16px}@media (max-width:600px){.eic-container{padding:15px}.eic-dropzone{padding:30px 20px}.eic-options{flex-direction:column;align-items:stretch}.eic-options select{width:100%}.eic-button{width:100%}.eic-file-list li,.eic-results li{flex-direction:column;gap:10px;align-items:flex-start}.eic-preview-parties{grid-template-columns:1fr}.eic-preview-modal{padding:10px}.eic-preview-container{max-height:95vh}.eic-comparison-container{grid-template-columns:1fr}.eic-comparison-pane .eic-xml-content{max-height:250px}.eic-result-actions{width:100%;justify-content:flex-end}}.eic-facturx-matches{margin-top:20px;padding:20px;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border:2px dashed var(--eic-color-warning);border-radius:12px}@media (prefers-color-scheme:dark){.eic-facturx-matches{background:linear-gradient(135deg,#451a03 0%,#78350f 100%);border-color:#fbbf24}}.eic-facturx-matches h4{margin:0 0 10px 0;color:var(--eic-text-heading);font-size:1.1em}.eic-facturx-matches>p{margin:0 0 15px 0;color:var(--eic-text-secondary);font-size:.95em}.eic-facturx-pairs{list-style:none;padding:0;margin:0 0 15px 0}.eic-facturx-pair{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px 15px;background:var(--eic-bg-primary);border-radius:8px;margin-bottom:8px}.eic-facturx-pair:last-child{margin-bottom:0}.eic-pair-files{display:flex;align-items:center;gap:8px;flex-wrap:wrap;font-size:.95em;color:var(--eic-text-primary)}.eic-pair-plus{color:var(--eic-color-warning);font-weight:700;font-size:1.2em}.eic-create-facturx-btn{padding:8px 16px;font-size:.9em}#eic-create-all-facturx{width:100%;margin-top:10px}.eic-imagex-section{margin-top:20px;padding:20px;background:linear-gradient(135deg,#dbeafe 0%,#bfdbfe 100%);border:2px dashed var(--eic-color-primary);border-radius:12px}@media (prefers-color-scheme:dark){.eic-imagex-section{background:linear-gradient(135deg,#1e3a5f 0%,#1e40af 100%);border-color:#60a5fa}}.eic-imagex-title{display:flex;align-items:center;gap:8px;margin:0 0 8px 0;color:var(--eic-text-heading);font-size:1.05em;font-weight:600}.eic-imagex-icon{font-size:1.2em}.eic-imagex-hint{margin:0 0 15px 0;color:var(--eic-text-secondary);font-size:.9em}.eic-imagex-pairs{list-style:none;padding:0;margin:0 0 15px 0}.eic-imagex-pair{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px;padding:12px 15px;background:var(--eic-bg-primary);border-radius:8px;margin-bottom:8px}.eic-imagex-pair:last-child{margin-bottom:0}.eic-file-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:6px;font-size:.85em;font-weight:500}.eic-badge-image{background:#e0e7ff;color:#4338ca}.eic-badge-xml{background:#dcfce7;color:#166534}@media (prefers-color-scheme:dark){.eic-badge-image{background:#312e81;color:#a5b4fc}.eic-badge-xml{background:#14532d;color:#86efac}}#eic-create-all-imagex{width:100%;margin-top:10px}@media (max-width:600px){.eic-imagex-pair{flex-direction:column;align-items:flex-start}.eic-imagex-pair .eic-button{width:100%}}.eic-button.eic-button-success{background:linear-gradient(135deg,var(--eic-color-success) 0%,var(--eic-color-success-dark) 100%);color:#fff}.eic-button.eic-button-success:hover{background:linear-gradient(135deg,var(--eic-color-success-dark) 0%,var(--eic-color-success-darker) 100%)}.eic-extract-xml-btn{display:inline-flex;align-items:center;gap:4px;padding:6px 10px;font-size:.8em;font-weight:600;border-radius:6px}.eic-extract-xml-btn svg{flex-shrink:0}.eic-conversion-warning{display:flex;gap:15px;margin-top:20px;padding:15px 20px;background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);border:1px solid #f59e0b;border-radius:12px;border-left:4px solid #d97706}@media (prefers-color-scheme:dark){.eic-conversion-warning{background:linear-gradient(135deg,#451a03 0%,#78350f 100%);border-color:#f59e0b}}.eic-warning-icon{font-size:1.5em;flex-shrink:0}.eic-warning-content{flex:1}.eic-warning-content strong{display:block;margin-bottom:8px;color:#92400e;font-size:1em}@media (prefers-color-scheme:dark){.eic-warning-content strong{color:#fbbf24}}.eic-warning-content p{margin:0;font-size:.9em;line-height:1.5;color:#78350f}@media (prefers-color-scheme:dark){.eic-warning-content p{color:#fcd34d}}.eic-warning-close{background:none;border:none;font-size:1.5em;color:#92400e;cursor:pointer;padding:0;line-height:1;opacity:.7;transition:opacity 0.2s ease}.eic-warning-close:hover{opacity:1}@media (prefers-color-scheme:dark){.eic-warning-close{color:#fbbf24}}@media (max-width:600px){.eic-facturx-pair{flex-direction:column;align-items:flex-start}.eic-create-facturx-btn{width:100%}}.eic-invoice-summary{margin-top:20px}.eic-summary-table-wrapper{background:var(--eic-bg-secondary);border-radius:12px;padding:20px;margin-bottom:20px}.eic-summary-table-wrapper h4{margin:0 0 15px 0;color:var(--eic-text-heading);font-size:1.1em}.eic-summary-table{width:100%;border-collapse:collapse;font-size:.9em}.eic-summary-table th,.eic-summary-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--eic-border-color)}.eic-summary-table th{background:var(--eic-bg-primary);font-weight:600;color:var(--eic-text-secondary);font-size:.85em;text-transform:uppercase;letter-spacing:.5px}.eic-summary-table tbody tr:hover{background:var(--eic-bg-primary)}.eic-summary-table tbody tr:last-child td{border-bottom:none}.eic-row-standard{color:var(--eic-text-secondary)}.eic-row-electronic{color:var(--eic-text-primary)}.eic-format-badge{display:inline-block;padding:3px 8px;border-radius:4px;font-size:.75em;font-weight:600;text-transform:uppercase}.eic-format-facturx{background:linear-gradient(135deg,#dbeafe 0%,#bfdbfe 100%);color:#1e40af}.eic-format-cii{background:linear-gradient(135deg,#d1fae5 0%,#a7f3d0 100%);color:#065f46}.eic-format-ubl{background:linear-gradient(135deg,#fef3c7 0%,#fde68a 100%);color:#92400e}.eic-format-unknown{background:var(--eic-bg-primary);color:var(--eic-text-secondary)}@media (prefers-color-scheme:dark){.eic-format-facturx{background:linear-gradient(135deg,#1e3a5f 0%,#1e40af 100%);color:#93c5fd}.eic-format-cii{background:linear-gradient(135deg,#064e3b 0%,#065f46 100%);color:#6ee7b7}.eic-format-ubl{background:linear-gradient(135deg,#78350f 0%,#92400e 100%);color:#fcd34d}}.eic-status-ok{color:#16a34a;font-weight:600}.eic-status-error{color:#dc2626;font-weight:600}.eic-summary-actions{display:flex;gap:10px;margin-top:15px;padding-top:15px;border-top:1px solid var(--eic-border-color)}.eic-summary-actions .eic-button{display:inline-flex;align-items:center;gap:6px;font-size:.85em}.eic-invoice-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:15px}.eic-invoice-card{background:var(--eic-bg-secondary);border-radius:12px;overflow:hidden;border:1px solid var(--eic-border-color);transition:transform 0.2s ease,box-shadow 0.2s ease}.eic-invoice-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgb(0 0 0 / .1)}.eic-card-valid{border-left:4px solid #16a34a}.eic-card-invalid{border-left:4px solid #dc2626}.eic-card-header{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;background:var(--eic-bg-primary);border-bottom:1px solid var(--eic-border-color)}.eic-card-format{font-size:.75em;font-weight:700;text-transform:uppercase;color:var(--eic-color-primary);letter-spacing:.5px}.eic-card-status{font-size:.8em;font-weight:600}.eic-status-valid{color:#16a34a}.eic-status-invalid{color:#dc2626}.eic-card-body{padding:15px}.eic-card-main{margin-bottom:15px}.eic-card-number{font-size:1.1em;font-weight:700;color:var(--eic-text-heading);margin-bottom:4px}.eic-card-date{font-size:.85em;color:var(--eic-text-secondary)}.eic-card-parties{display:flex;align-items:center;gap:10px;margin-bottom:15px;padding:10px;background:var(--eic-bg-primary);border-radius:8px}.eic-card-seller,.eic-card-buyer{flex:1;min-width:0}.eic-card-label{display:block;font-size:.7em;text-transform:uppercase;color:var(--eic-text-secondary);letter-spacing:.5px;margin-bottom:2px}.eic-card-value{display:block;font-size:.9em;font-weight:500;color:var(--eic-text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.eic-card-arrow{color:var(--eic-text-secondary);font-size:1.2em;flex-shrink:0}.eic-card-amount{display:flex;justify-content:space-between;align-items:baseline;padding-top:10px;border-top:1px solid var(--eic-border-color)}.eic-card-total{font-size:1.3em;font-weight:700;color:var(--eic-text-heading)}.eic-card-total-label{font-size:.75em;text-transform:uppercase;color:var(--eic-text-secondary);letter-spacing:.5px}@media (max-width:600px){.eic-summary-table{font-size:.8em}.eic-summary-table th,.eic-summary-table td{padding:8px 6px}.eic-summary-actions{flex-direction:column}.eic-summary-actions .eic-button{width:100%;justify-content:center}.eic-invoice-cards{grid-template-columns:1fr}.eic-card-parties{flex-direction:column;align-items:stretch}.eic-card-arrow{transform:rotate(90deg);text-align:center}}.eic-session-stats{display:flex;align-items:center;gap:0;padding:12px 20px;background:linear-gradient(135deg,var(--eic-bg-secondary) 0%,var(--eic-bg-primary) 100%);margin-bottom:20px;border:1px solid var(--eic-border-color);flex-wrap:wrap;font-size:1rem}.eic-stat{display:flex;flex-direction:column;align-items:center;padding:0 20px}.eic-stat-value{font-size:1.5em;font-weight:700;color:var(--eic-text-heading);line-height:1.2}.eic-stat-label{font-size:.75em;color:var(--eic-text-secondary);text-transform:uppercase;letter-spacing:.5px}.eic-stat-separator{width:1px;height:30px;background:var(--eic-border-color)}.eic-stat-electronic{color:var(--eic-color-primary)}.eic-stat-success{color:var(--eic-color-success)}.eic-stat-warning{color:var(--eic-color-warning)}.eic-stat-actions{margin-left:auto;display:flex;gap:8px}.eic-button-small{padding:8px 12px;font-size:.8em;display:inline-flex;align-items:center;gap:6px}.eic-show-history{background:var(--eic-bg-primary);border:1px solid var(--eic-border-color);color:var(--eic-text-secondary)}.eic-show-history:hover{background:var(--eic-bg-hover);color:var(--eic-text-primary);border-color:var(--eic-color-primary)}.eic-history-panel{position:fixed;top:0;left:0;right:0;bottom:0;z-index:10001;display:flex;align-items:center;justify-content:center;padding:20px;background:rgb(0 0 0 / .5);backdrop-filter:blur(4px);animation:eic-fade-in 0.2s ease}@keyframes eic-fade-in{from{opacity:0}to{opacity:1}}.eic-history-panel>div:first-child{background:var(--eic-bg-primary);border-radius:16px;max-width:700px;width:100%;max-height:80vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--eic-shadow-lg);animation:eic-slide-up 0.2s ease}@keyframes eic-slide-up{from{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.eic-history-header{display:flex;justify-content:space-between;align-items:center;padding:20px 25px;border-bottom:1px solid var(--eic-border-color);background:var(--eic-bg-secondary)}.eic-history-header h3{margin:0;color:var(--eic-text-heading);font-size:1.2em}.eic-history-close{background:none;border:none;font-size:28px;color:var(--eic-text-secondary);cursor:pointer;line-height:1;padding:0;transition:color 0.2s ease}.eic-history-close:hover{color:var(--eic-text-primary)}.eic-history-content{padding:20px 25px;overflow-y:auto;flex:1}.eic-history-empty{text-align:center;color:var(--eic-text-secondary);padding:40px 20px;font-style:italic}.eic-history-table{width:100%;border-collapse:collapse;font-size:.9em}.eic-history-table th,.eic-history-table td{padding:10px 12px;text-align:left;border-bottom:1px solid var(--eic-border-color)}.eic-history-table th{background:var(--eic-bg-secondary);font-weight:600;color:var(--eic-text-secondary);font-size:.8em;text-transform:uppercase;letter-spacing:.5px;position:sticky;top:0}.eic-history-table tbody tr:hover{background:var(--eic-bg-secondary)}.eic-history-table tbody tr:last-child td{border-bottom:none}.eic-history-footer{display:flex;justify-content:space-between;align-items:center;padding:15px 25px;border-top:1px solid var(--eic-border-color);background:var(--eic-bg-secondary)}.eic-history-count{font-size:.85em;color:var(--eic-text-secondary)}.eic-clear-history{padding:8px 16px;font-size:.85em;background:none;border:1px solid var(--eic-color-error);color:var(--eic-color-error);border-radius:6px;cursor:pointer;transition:all 0.2s ease}.eic-clear-history:hover{background:var(--eic-color-error);color:#fff}@media (max-width:600px){.eic-session-stats{flex-direction:column;gap:15px;padding:15px}.eic-stat{padding:0;flex-direction:row;gap:8px;width:100%;justify-content:space-between}.eic-stat-separator{display:none}.eic-stat-actions{margin-left:0;width:100%;justify-content:center;padding-top:10px;border-top:1px solid var(--eic-border-color)}.eic-history-panel{padding:10px}.eic-history-panel>div:first-child{max-height:90vh}.eic-history-table{font-size:.8em}.eic-history-table th,.eic-history-table td{padding:8px 6px}.eic-ai-consent-dialog,.eic-ai-review-dialog{width:95vw;max-height:90vh}}.eic-ai-generate-btn{background:linear-gradient(135deg,#7c3aed 0%,#a855f7 100%);color:#fff;border:none;border-radius:6px;padding:4px 12px;font-size:.8em;cursor:pointer;display:inline-flex;align-items:center;gap:6px;transition:opacity 0.2s}.eic-ai-generate-btn:hover{opacity:.85}.eic-ai-generate-btn:disabled{opacity:.5;cursor:wait}.eic-ai-generate-btn svg{flex-shrink:0}.eic-ai-consent-overlay,.eic-ai-review-overlay{position:fixed;inset:0;background:rgb(0 0 0 / .6);display:flex;align-items:center;justify-content:center;z-index:100000;backdrop-filter:blur(4px)}.eic-ai-consent-dialog{background:#fff;border-radius:12px;padding:28px 32px;max-width:520px;width:90vw;box-shadow:0 20px 60px rgb(0 0 0 / .3)}.eic-ai-consent-dialog h3{margin:0 0 16px;font-size:1.15em;color:#1e293b}.eic-ai-consent-dialog p{color:#475569;line-height:1.6;margin:0 0 20px}.eic-ai-key-section{margin-bottom:20px}.eic-ai-key-toggle{display:flex;align-items:center;gap:8px;cursor:pointer;font-size:.9em;color:#334155;margin-bottom:10px}.eic-ai-key-input{width:100%;padding:8px 12px;border:1px solid #cbd5e1;border-radius:6px;font-family:monospace;font-size:.9em;box-sizing:border-box}.eic-ai-key-input.eic-ai-key-error{border-color:#ef4444;box-shadow:0 0 0 2px rgb(239 68 68 / .2)}.eic-ai-key-required{color:#b45309;font-size:.85em;margin:8px 0 0}.eic-ai-consent-actions{display:flex;gap:10px;justify-content:flex-end}.eic-ai-consent-actions .eic-ai-consent-accept{background:linear-gradient(135deg,var(--eic-color-ai) 0%,var(--eic-color-ai-light) 100%);color:#fff;border:none}.eic-ai-consent-actions .eic-ai-consent-decline{background:var(--eic-bg-tertiary);color:var(--eic-text-secondary);border:1px solid var(--eic-border-color)}.eic-ai-review-dialog{background:var(--eic-bg-primary);border-radius:12px;max-width:800px;width:90vw;max-height:85vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgb(0 0 0 / .3);overflow:hidden}.eic-ai-review-header{display:flex;align-items:center;justify-content:space-between;padding:20px 24px 12px}.eic-ai-review-header h3{margin:0;font-size:1.1em;color:#1e293b}.eic-ai-tokens{font-size:.8em;color:#64748b;background:#f1f5f9;padding:4px 10px;border-radius:12px}.eic-ai-review-tabs{display:flex;border-bottom:1px solid #e2e8f0;padding:0 24px}.eic-ai-tab{background:none;border:none;padding:10px 16px;font-size:.9em;color:#64748b;cursor:pointer;border-bottom:2px solid #fff0;transition:color 0.2s,border-color 0.2s}.eic-ai-tab:hover{color:#334155}.eic-ai-tab.active{color:#7c3aed;border-bottom-color:#7c3aed}.eic-ai-review-content{flex:1;overflow-y:auto;padding:20px 24px}.eic-ai-tab-panel{display:none}.eic-ai-tab-panel.active{display:block}.eic-ai-xml-editor{width:100%;min-height:400px;font-family:'Fira Code','Consolas',monospace;font-size:12px;line-height:1.5;padding:12px;border:1px solid #e2e8f0;border-radius:6px;resize:vertical;box-sizing:border-box;tab-size:2;background:#f8fafc;color:#1e293b}.eic-ai-review-actions{display:flex;gap:10px;padding:16px 24px;border-top:1px solid #e2e8f0;justify-content:flex-end}.eic-ai-review-footer .eic-ai-accept-btn{background:linear-gradient(135deg,var(--eic-color-accept) 0%,var(--eic-color-accept-light) 100%);color:#fff;border:none}.eic-ai-review-footer .eic-ai-regenerate-btn{background:linear-gradient(135deg,var(--eic-color-ai) 0%,var(--eic-color-ai-light) 100%);color:#fff;border:none}.eic-ai-doc-table{width:100%;border-collapse:collapse;font-size:.9em}.eic-ai-doc-table td{padding:6px 10px;border-bottom:1px solid #f1f5f9}.eic-ai-field-label{font-weight:600;color:#475569;width:160px;white-space:nowrap}.eic-ai-number{text-align:right;font-variant-numeric:tabular-nums}.eic-ai-lines-table{width:100%;border-collapse:collapse;font-size:.85em;margin-top:12px}.eic-ai-lines-table th{background:#f1f5f9;padding:6px 8px;text-align:left;font-weight:600;color:#475569}.eic-ai-lines-table td{padding:6px 8px;border-bottom:1px solid #f1f5f9}.eic-ai-no-data{color:#94a3b8;font-style:italic}.eic-ai-validation-status{padding:10px 16px;border-radius:8px;font-weight:600;margin-bottom:16px}.eic-ai-validation-status.eic-ai-valid{background:#ecfdf5;color:#065f46}.eic-ai-validation-status.eic-ai-invalid{background:#fef2f2;color:#991b1b}.eic-ai-validation-list{list-style:none;padding:0;margin:8px 0 16px}.eic-ai-validation-list li{padding:6px 10px;border-radius:4px;margin-bottom:4px;font-size:.9em}.eic-ai-errors li{background:#fef2f2;color:#991b1b}.eic-ai-warnings li{background:#fffbeb;color:#92400e}.eic-ai-all-good{color:#065f46;font-weight:500}.eic-ai-error-notification{position:fixed;top:24px;left:50%;transform:translateX(-50%);z-index:100001;animation:eic-ai-slide-in 0.3s ease-out}@keyframes eic-ai-slide-in{from{opacity:0;transform:translateX(-50%) translateY(-20px)}to{opacity:1;transform:translateX(-50%) translateY(0)}}.eic-ai-error-content{display:flex;align-items:flex-start;gap:12px;background:#fff;border:1px solid #fca5a5;border-left:4px solid #ef4444;border-radius:10px;padding:16px 20px;box-shadow:0 10px 40px rgb(0 0 0 / .15);max-width:500px;min-width:320px}.eic-ai-error-content svg{flex-shrink:0;color:#ef4444;margin-top:2px}.eic-ai-error-content div{flex:1}.eic-ai-error-content p{margin:0 0 4px;color:#1e293b;font-size:.9em;line-height:1.5}.eic-ai-error-content p:last-child{margin-bottom:0;color:#64748b;font-size:.85em}.eic-ai-error-close{background:none;border:none;font-size:1.4em;color:#94a3b8;cursor:pointer;padding:0;line-height:1}.eic-ai-error-close:hover{color:#475569}@media (prefers-color-scheme:dark){.eic-ai-generate-btn{background:linear-gradient(135deg,#6d28d9 0%,#7c3aed 100%)}.eic-ai-consent-dialog,.eic-ai-review-dialog{background:#1e293b}.eic-ai-consent-dialog h3,.eic-ai-review-header h3{color:#f1f5f9}.eic-ai-consent-dialog p{color:#94a3b8}.eic-ai-key-toggle{color:#cbd5e1}.eic-ai-key-input{background:#0f172a;border-color:#334155;color:#e2e8f0}.eic-ai-key-required{color:#fbbf24}.eic-ai-consent-actions .eic-ai-consent-decline{background:var(--eic-bg-tertiary);color:var(--eic-text-secondary);border-color:var(--eic-border-color)}.eic-ai-tokens{background:#334155;color:#94a3b8}.eic-ai-review-tabs{border-bottom-color:#334155}.eic-ai-tab{color:#94a3b8}.eic-ai-tab:hover{color:#e2e8f0}.eic-ai-tab.active{color:#a78bfa;border-bottom-color:#a78bfa}.eic-ai-xml-editor{background:#0f172a;border-color:#334155;color:#e2e8f0}.eic-ai-review-actions{border-top-color:#334155}.eic-ai-doc-table td{border-bottom-color:#334155}.eic-ai-field-label{color:#94a3b8}.eic-ai-lines-table th{background:#334155;color:#94a3b8}.eic-ai-lines-table td{border-bottom-color:#334155}.eic-ai-validation-status.eic-ai-valid{background:#064e3b;color:#6ee7b7}.eic-ai-validation-status.eic-ai-invalid{background:#450a0a;color:#fca5a5}.eic-ai-errors li{background:#450a0a;color:#fca5a5}.eic-ai-warnings li{background:#451a03;color:#fbbf24}.eic-ai-all-good{color:#6ee7b7}.eic-ai-no-data{color:#64748b}.eic-ai-error-content{background:#1e293b;border-color:#7f1d1d}.eic-ai-error-content p{color:#f1f5f9}.eic-ai-error-content p:last-child{color:#94a3b8}.eic-ai-error-close{color:#64748b}.eic-ai-error-close:hover{color:#cbd5e1}}.eic-toast-container{position:fixed;top:20px;right:20px;z-index:10002;display:flex;flex-direction:column;gap:10px;pointer-events:none}.eic-toast{display:flex;align-items:center;gap:12px;padding:12px 16px;border-radius:10px;background:var(--eic-bg-primary);box-shadow:0 4px 20px rgb(0 0 0 / .15);border-left:4px solid;min-width:280px;max-width:400px;pointer-events:auto;opacity:0;transform:translateX(100%);transition:opacity 0.3s ease,transform 0.3s ease}.eic-toast-show{opacity:1;transform:translateX(0)}.eic-toast-hide{opacity:0;transform:translateX(100%)}.eic-toast-success{border-color:var(--eic-color-success)}.eic-toast-error{border-color:var(--eic-color-error)}.eic-toast-warning{border-color:var(--eic-color-warning)}.eic-toast-info{border-color:var(--eic-color-primary)}.eic-toast-icon{width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px;font-weight:700;flex-shrink:0}.eic-toast-success .eic-toast-icon{background:#dcfce7;color:var(--eic-color-success)}.eic-toast-error .eic-toast-icon{background:#fee2e2;color:var(--eic-color-error)}.eic-toast-warning .eic-toast-icon{background:#fef3c7;color:var(--eic-color-warning)}.eic-toast-info .eic-toast-icon{background:#dbeafe;color:var(--eic-color-primary)}.eic-toast-message{flex:1;font-size:.9em;color:var(--eic-text-primary);line-height:1.4}.eic-toast-close{background:none;border:none;color:var(--eic-text-muted);cursor:pointer;font-size:18px;line-height:1;padding:0;margin-left:auto;transition:color 0.2s ease}.eic-toast-close:hover{color:var(--eic-text-primary)}@media (prefers-color-scheme:dark){.eic-toast{box-shadow:0 4px 20px rgb(0 0 0 / .4)}.eic-toast-success .eic-toast-icon{background:#14532d}.eic-toast-error .eic-toast-icon{background:#450a0a}.eic-toast-warning .eic-toast-icon{background:#78350f}.eic-toast-info .eic-toast-icon{background:#1e3a8a}}@media (max-width:600px){.eic-toast-container{top:auto;bottom:20px;left:10px;right:10px}.eic-toast{min-width:auto;max-width:none;transform:translateY(100%)}.eic-toast-show{transform:translateY(0)}.eic-toast-hide{transform:translateY(100%)}}.eic-shortcut-hint{display:inline-flex;align-items:center;gap:4px;font-size:.75em;color:var(--eic-text-muted);margin-left:8px}.eic-kbd{display:inline-block;padding:2px 6px;background:var(--eic-bg-secondary);border:1px solid var(--eic-border-color);border-radius:4px;font-family:'SF Mono','Monaco','Inconsolata',monospace;font-size:.85em;box-shadow:0 1px 2px rgb(0 0 0 / .1)}@media (prefers-color-scheme:dark){.eic-kbd{background:var(--eic-bg-tertiary);box-shadow:0 1px 2px rgb(0 0 0 / .3)}}.eic-export-actions{display:flex;gap:10px;margin-top:15px;padding-top:15px;border-top:1px solid var(--eic-border-color);flex-wrap:wrap}.eic-export-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:.85em}.eic-export-btn svg{width:16px;height:16px;flex-shrink:0}.eic-file-thumbnail{width:40px;height:54px;object-fit:cover;border-radius:4px;border:1px solid var(--eic-border-color);box-shadow:0 1px 3px rgb(0 0 0 / .1);flex-shrink:0;background:var(--eic-bg-primary)}.eic-file-thumbnail-placeholder{width:40px;height:54px;border-radius:4px;background:var(--eic-bg-secondary);border:1px dashed var(--eic-border-color);display:flex;align-items:center;justify-content:center;flex-shrink:0}.eic-file-thumbnail-placeholder svg{width:20px;height:20px;color:var(--eic-text-muted)}.eic-file-item-with-thumb{display:flex;align-items:center;gap:12px}.eic-file-item-with-thumb .eic-file-info{flex:1;min-width:0}.eic-report-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;font-size:.85em;background:linear-gradient(135deg,#dc2626 0%,#b91c1c 100%);color:#fff;border:none;border-radius:6px;cursor:pointer;transition:all 0.2s ease}.eic-report-btn:hover{transform:translateY(-1px);box-shadow:0 2px 8px rgb(220 38 38 / .3)}.eic-report-btn:active{transform:translateY(0)}.eic-report-btn svg{width:16px;height:16px;flex-shrink:0}@media (prefers-color-scheme:dark){.eic-file-thumbnail{border-color:var(--eic-border-color);box-shadow:0 1px 3px rgb(0 0 0 / .3)}.eic-report-btn{background:linear-gradient(135deg,#ef4444 0%,#dc2626 100%)}}@keyframes eic-spin{from{transform:rotate(0deg)}to{transform:rotate(360deg)}}.eic-spin{animation:eic-spin 1s linear infinite}.eic-restore-toast{position:fixed;bottom:20px;left:50%;transform:translateX(-50%) translateY(100px);background:var(--eic-bg-card);border:1px solid var(--eic-border-color);border-radius:12px;padding:16px 20px;box-shadow:var(--eic-shadow-lg);z-index:10000;display:flex;flex-direction:column;gap:12px;opacity:0;transition:all 0.3s ease}.eic-restore-toast.active{transform:translateX(-50%) translateY(0);opacity:1}.eic-restore-content{display:flex;align-items:center;gap:10px;color:var(--eic-text-primary);font-size:1rem}.eic-restore-content svg{color:var(--eic-color-primary);flex-shrink:0}.eic-restore-actions{display:flex;gap:10px;justify-content:flex-end}.eic-restore-yes{padding:8px 16px;background:var(--eic-color-primary);color:#fff;border:none;border-radius:6px;cursor:pointer;font-size:.9em;font-weight:500;transition:all 0.2s ease}.eic-restore-yes:hover{background:var(--eic-color-primary-dark)}.eic-restore-no{padding:8px 16px;background:#fff0;color:var(--eic-text-secondary);border:1px solid var(--eic-border-color);border-radius:6px;cursor:pointer;font-size:.9em;transition:all 0.2s ease}.eic-restore-no:hover{background:var(--eic-bg-secondary)}@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:0.01ms!important;animation-iteration-count:1!important;transition-duration:0.01ms!important}}