.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background-color:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;padding:1rem}.modal-content{background:#fff;border-radius:.5rem;box-shadow:0 20px 25px -5px #0000001a;max-width:500px;width:100%;max-height:90vh;overflow-y:auto}.modal-content.large{max-width:1200px}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;border-bottom:1px solid #e5e7eb}.modal-header h2{font-size:1.5rem;font-weight:600;margin:0}.close-button{background:none;border:none;padding:.5rem;cursor:pointer;color:#6b7280;transition:color .2s}.close-button:hover{color:#374151}.management-toolbar{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb;gap:1rem;flex-wrap:wrap}.toolbar-filters,.toolbar-actions{display:flex;gap:.5rem;align-items:center}.filter-select{padding:.5rem;border:1px solid #d1d5db;border-radius:.375rem;background:#fff;font-size:.875rem}.group-management{padding:1rem 1.5rem;border-bottom:1px solid #e5e7eb}.group-management h3{font-size:1.125rem;font-weight:600;margin-bottom:.75rem}.group-list{display:flex;flex-direction:column;gap:.5rem}.group-item{display:flex;align-items:center;padding:.5rem;border:1px solid #e5e7eb;border-radius:.375rem}.group-display{display:flex;justify-content:space-between;align-items:center;width:100%}.group-actions{display:flex;gap:.25rem}.group-edit{display:flex;gap:.5rem;width:100%}.group-edit input{flex:1;padding:.375rem .5rem;border:1px solid #d1d5db;border-radius:.375rem}.add-group-button{padding:.5rem;border:1px dashed #d1d5db;border-radius:.375rem;background:none;cursor:pointer;color:#6b7280;transition:all .2s}.add-group-button:hover{border-color:#9ca3af;color:#374151}.data-table-container{padding:1.5rem;overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:.875rem}.data-table th,.data-table td{padding:.75rem;text-align:left;border-bottom:1px solid #e5e7eb}.data-table th{font-weight:600;color:#374151;background:#f9fafb}.data-table tr:hover{background:#f9fafb}.key-fields{font-size:.75rem;color:#6b7280}.field-preview{margin-bottom:.25rem}.field-preview strong{font-weight:600;color:#374151}.group-select{padding:.25rem .5rem;border:1px solid #d1d5db;border-radius:.375rem;font-size:.75rem}.icon-button{background:none;border:1px solid #e5e7eb;padding:.375rem;border-radius:.375rem;cursor:pointer;display:inline-flex;align-items:center;justify-content:center;transition:all .2s}.icon-button:hover{background:#f3f4f6}.icon-button.danger{color:#dc2626}.icon-button.danger:hover{background:#fee2e2;border-color:#fecaca}.danger-button{background:#dc2626;color:#fff;border:none;padding:.5rem 1rem;border-radius:.375rem;cursor:pointer;font-size:.875rem;transition:background .2s}.danger-button:hover{background:#b91c1c}.primary-button{background:#3b82f6;color:#fff;border:none;padding:.5rem 1rem;border-radius:.375rem;cursor:pointer;font-size:.875rem;display:inline-flex;align-items:center;gap:.5rem;transition:background .2s}.primary-button:hover{background:#2563eb}.error-message{background:#fee2e2;color:#991b1b;padding:.75rem 1rem;margin:1rem 1.5rem;border-radius:.375rem;display:flex;justify-content:space-between;align-items:center}.close-error{background:none;border:none;font-size:1.25rem;cursor:pointer;color:#991b1b}.pagination{display:flex;justify-content:center;align-items:center;gap:1rem;margin-top:1.5rem}.pagination button{padding:.5rem 1rem;border:1px solid #d1d5db;background:#fff;border-radius:.375rem;cursor:pointer;transition:all .2s}.pagination button:hover:not(:disabled){background:#f3f4f6}.pagination button:disabled{opacity:.5;cursor:not-allowed}.no-data,.loading{text-align:center;padding:3rem;color:#6b7280}@keyframes pulse{0%{opacity:.6}50%{opacity:1}to{opacity:.6}}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-5px)}to{transform:translateY(0)}}.min-h-screen{min-height:100vh}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.pt-8{padding-top:2rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.p-1{padding:.25rem}.p-2{padding:.5rem}.mb-8{margin-bottom:2rem}.mb-6{margin-bottom:1.5rem}.mb-4{margin-bottom:1rem}.mb-3{margin-bottom:.75rem}.mb-2{margin-bottom:.5rem}.mb-1{margin-bottom:.25rem}.mt-6{margin-top:1.5rem}.my-8{margin-top:2rem;margin-bottom:2rem}.ml-2{margin-left:.5rem}.gap-4{gap:1rem}.gap-2{gap:.5rem}.w-full{width:100%}.h-12{height:3rem}.h-auto{height:auto}.max-w-md{max-width:28rem}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-full{border-radius:9999px}.rounded{border-radius:.25rem}.border-4{border-width:4px}.border-dashed{border-style:dashed}.opacity-20{opacity:.2}.opacity-5{opacity:.05}.opacity-40{opacity:.4}.opacity-75{opacity:.75}.hidden{display:none}.relative{position:relative}.absolute{position:absolute}.inset-0{top:0;right:0;bottom:0;left:0}.top-0{top:0}.right-0{right:0}.left-0{left:0}.pointer-events-none{pointer-events:none}.shadow-xl{box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a}.overflow-hidden{overflow:hidden}.text-center{text-align:center}.text-3xl{font-size:1.875rem}.text-lg{font-size:1.125rem}.text-sm{font-size:.875rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.py-3{padding-top:.75rem;padding-bottom:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.flex-1{flex:1 1 0%}.transition-all{transition-property:all}.transition-colors{transition-property:background-color,border-color,color,fill,stroke}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.duration-700{transition-duration:.7s}.transform{transform:translate(0) translateY(0) rotate(0) skew(0) skewY(0) scaleX(1) scaleY(1)}.hover\\:scale-105:hover{transform:scale(1.05)}.scale-105{transform:scale(1.05)}.scale-100{transform:scale(1)}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.bg-black{background-color:#000}.bg-dark-blue{background-color:#273f4f}.bg-orange{background-color:#fe7743}.bg-light{background-color:#efeeea}.text-light{color:#efeeea}.text-dark-blue{color:#273f4f}.border-orange{border-color:#fe7743}.main-container{background-color:#000}.card-container{background-color:#273f4f;border:2px solid #FE7743}.upload-button{background-color:#fe7743;color:#efeeea}.camera-button{background-color:#efeeea;color:#273f4f}.close-button{background-color:#000;color:#efeeea;border:1px solid #EFEEEA}.capture-button{background-color:#fe7743;color:#efeeea}.image-container{border:2px solid #FE7743;background:#000}.footer-text{color:#efeeea}.flex-center{display:flex;align-items:center;justify-content:center}.flex-between{display:flex;align-items:center;justify-content:space-between}.flex-col-center{display:flex;flex-direction:column;align-items:center}.flex-gap-4{display:flex;gap:1rem;margin-bottom:1.5rem}.p-6-mb-6{padding:1.5rem;margin-bottom:1.5rem}.p-4-mb-6{padding:1rem;margin-bottom:1.5rem}.p-3-4{padding:.75rem 1rem}.mb-4-relative{margin-bottom:1rem;position:relative}.mb-2-flex{margin-bottom:.5rem;display:flex}.mt-6-transition{margin-top:1.5rem;transition-property:all;transition-duration:.5s}.my-8-opacity{margin-top:2rem;margin-bottom:2rem;opacity:.6}.btn-base{padding:.75rem 1rem;border-radius:.375rem;transition-property:all;transition-duration:.3s;display:flex;align-items:center;justify-content:center;gap:.5rem;transform:translate(0) translateY(0) rotate(0) skew(0) skewY(0) scaleX(1) scaleY(1);flex:1 1 0%}.btn-base:hover{transform:scale(1.05)}.btn-full{width:100%}.text-title{font-size:1.875rem;font-weight:700;text-align:center;margin-bottom:2rem;color:#efeeea}.text-subtitle{font-size:1.125rem;font-weight:600;color:#efeeea;display:flex;align-items:center}.text-footer{font-weight:500;margin-bottom:.25rem;color:#efeeea}.text-footer-small{font-size:.875rem;opacity:.75;color:#efeeea}.main-wrapper{min-height:100vh;display:flex;flex-direction:column;align-items:center;padding-top:2rem;background-color:#000}.card-wrapper{width:100%;max-width:28rem;border-radius:.5rem;box-shadow:0 20px 25px -5px #0000001a,0 10px 10px -5px #0000000a;padding:1.5rem;margin-bottom:1.5rem;position:relative;overflow:hidden;background-color:#273f4f;border:2px solid #FE7743}.image-wrapper{border-radius:.375rem;padding:.5rem;overflow:hidden;border:2px solid #FE7743;background:#000;display:flex;justify-content:center;align-items:center;min-height:200px}.footer-wrapper{text-align:center;width:100%;position:relative;padding:1rem}.rounded-hidden{border-radius:.375rem;display:none}.rounded-full-p1{border-radius:9999px;padding:.25rem;transition-property:background-color,border-color,color,fill,stroke}.absolute-top-right{position:absolute;top:0;right:0;pointer-events:none}.absolute-top-left{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none}.absolute-inset{position:absolute;top:0;right:0;bottom:0;left:0;border-width:4px;border-style:dashed;border-radius:.375rem;pointer-events:none}.video-base{width:100%;border-radius:.375rem}.upload-server-button{background-color:#43a047;color:#efeeea;margin-top:1rem;width:100%}.upload-server-button:hover{background-color:#2e7d32}.upload-server-button:disabled{background-color:#90a4ae;cursor:not-allowed}.extracted-data{margin-top:1rem;padding:1rem;background-color:#000;border-radius:.375rem;border:2px solid #43a047;max-height:350px;overflow-y:auto}.extracted-data pre{margin:0;color:#efeeea;font-family:monospace;font-size:.875rem;white-space:pre-wrap}.data-display-box{display:flex;flex-direction:column;background-color:#ffffff0d;border-radius:.25rem;padding:.75rem;margin-bottom:1rem}.data-item{display:flex;margin-bottom:.5rem;padding-bottom:.5rem;border-bottom:1px solid rgba(255,255,255,.1)}.data-item:last-child{margin-bottom:0;padding-bottom:0;border-bottom:none}.data-label{flex:0 0 40%;font-weight:600;color:#fe7743}.data-value{flex:0 0 60%;word-break:break-word;color:#efeeea}.raw-text-details{margin-top:.5rem;cursor:pointer}.raw-text-details summary{color:#fe7743;font-weight:600;padding:.5rem;background-color:#ffffff0d;border-radius:.25rem}.raw-text-details summary:hover{background-color:#ffffff1a}.raw-text{margin-top:.5rem;padding:.5rem;background-color:#0000004d;border-radius:.25rem;font-size:.75rem;max-height:150px;overflow-y:auto}.download-button{display:flex;align-items:center;gap:.25rem;background-color:#43a047;color:#efeeea;border:none;border-radius:.25rem;padding:.25rem .5rem;font-size:.75rem;cursor:pointer;transition:all .2s ease}.download-button:hover{background-color:#2e7d32;transform:scale(1.05)}.download-button svg{width:.875rem;height:.875rem}.error-message{margin-top:.5rem;padding:.5rem;background-color:#f4433633;border-radius:.375rem;border:1px solid #f44336;color:#f44336;font-size:.875rem}.camera-controls{display:flex;align-items:center;margin-top:.5rem;justify-content:center;gap:1rem}.camera-info{margin-top:.5rem;text-align:center;font-size:.875rem;color:#efeeea;opacity:.75}.capture-status{display:flex;gap:1rem;justify-content:center;margin-top:.5rem}.status-captured{color:#43a047;font-weight:600}.switch-camera-button{flex:0 0 auto;padding:.75rem;background-color:#efeeea;color:#273f4f;border-radius:.375rem;display:flex;align-items:center;justify-content:center;transition:all .3s ease}.switch-camera-button:hover{transform:scale(1.05);background-color:#fe7743;color:#efeeea}.camera-count-badge{display:inline-flex;align-items:center;justify-content:center;font-size:.75rem;background-color:#fe7743;color:#efeeea;border-radius:9999px;padding:.125rem .375rem;margin-left:.5rem;min-width:1.25rem;height:1.25rem}.img-base{max-width:100%;max-height:350px;object-fit:contain;display:block;margin:0 auto}.images-container{display:flex;gap:1rem;margin-top:1rem}.image-side-wrapper{flex:1;display:flex;flex-direction:column}.image-side-label{font-size:.875rem;font-weight:600;color:#fe7743;margin-bottom:.5rem;text-align:center}.image-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;background-color:#ffffff0d;border:2px dashed rgba(255,255,255,.3);border-radius:.375rem;cursor:pointer;transition:all .3s ease;color:#efeeea;opacity:.7}.image-placeholder:hover{border-color:#fe7743;opacity:1}.image-placeholder svg{margin-bottom:.5rem}.image-remove-button{position:absolute;top:.5rem;right:.5rem;background-color:#000000b3;color:#efeeea;border:none;border-radius:9999px;padding:.25rem;cursor:pointer;transition:all .2s ease}.image-remove-button:hover{background-color:#f44336;transform:scale(1.1)}.camera-capture-info{display:flex;flex-direction:column;align-items:center;gap:1rem;margin-bottom:1rem}.capture-side-label{font-size:1.125rem;font-weight:600;color:#fe7743;margin:0;text-align:center}.camera-side-selector{display:flex;gap:.5rem}.side-selector-button{padding:.5rem 1rem;background-color:#ffffff1a;color:#efeeea;border:1px solid rgba(255,255,255,.3);border-radius:.375rem;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.5rem}.side-selector-button:hover:not(:disabled){background-color:#fff3}.side-selector-button.active{background-color:#fe7743;border-color:#fe7743}.side-selector-button:disabled{opacity:.5;cursor:not-allowed;background-color:#43a0474d;border-color:#43a047}.action-buttons-container{margin-bottom:2rem;padding:1.5rem;background:#ffffff0d;border-radius:.5rem;border:1px solid rgba(255,255,255,.1)}.action-section-title{font-size:1rem;font-weight:600;color:#fe7743;margin-bottom:1rem;text-align:center}.upload-methods{display:flex;gap:2rem;align-items:stretch;justify-content:center}.upload-method{flex:1;max-width:250px;text-align:center}.method-title{font-size:.875rem;font-weight:500;color:#efeeea;margin-bottom:.75rem;opacity:.8}.divider-vertical{width:1px;background:#fff3;margin:0 1rem}.full-width{width:100%}.document-type-selector{margin-top:1.5rem;margin-bottom:1rem}.document-type-options{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.5rem}.document-type-option{display:flex;align-items:center;background-color:#000;color:#efeeea;border-radius:.375rem;padding:.5rem .75rem;font-size:.875rem;cursor:pointer;transition:all .3s ease;border:1px solid rgba(255,255,255,.1);flex:1 1 calc(50% - .5rem);min-width:calc(50% - .5rem)}.document-type-option:hover{border-color:#fe7743}.document-type-option.selected{background-color:#fe7743;color:#efeeea}.document-type-option input{position:absolute;opacity:0;cursor:pointer;height:0;width:0}.document-type-option span{margin-left:.25rem}.footer-wrapper svg{display:block}.text-footer{font-size:.875rem;color:#666;text-align:center;margin:0}.text-footer-small{font-size:.75rem;color:#999;text-align:center;margin:.5rem 0 0}.group-management-section{margin-bottom:2rem;padding:1.5rem;background:linear-gradient(135deg,#f8f9fa,#fff);border-radius:12px;box-shadow:0 2px 10px #0000000d;border:1px solid #e9ecef}.group-creation-form{margin-top:1rem;padding:1rem;background:#fff;border-radius:8px;border:1px solid #dee2e6}.group-name-input{width:100%;padding:.75rem;border:2px solid #e9ecef;border-radius:8px;font-size:1rem;margin-bottom:1rem;transition:border-color .3s ease}.group-name-input:focus{outline:none;border-color:#fe7743;box-shadow:0 0 0 3px #fe77431a}.flex-gap-2{display:flex;gap:.5rem}.create-button{background:linear-gradient(135deg,#fe7743,#ff6b47);color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-weight:500;cursor:pointer;transition:all .3s ease}.create-button:hover{transform:translateY(-1px);box-shadow:0 4px 12px #fe77434d}.cancel-button{background:#6c757d;color:#fff;border:none;padding:.5rem 1rem;border-radius:6px;font-weight:500;cursor:pointer;transition:all .3s ease}.cancel-button:hover{background:#5a6268;transform:translateY(-1px)}.create-group-button{background:linear-gradient(135deg,#28a745,#20c997);color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;display:flex;align-items:center;gap:.5rem;font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 4px #28a74533}.create-group-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #28a7454d}.manage-groups-button{background:linear-gradient(135deg,#6f42c1,#8b5cf6);color:#fff;border:none;padding:.5rem 1rem;border-radius:8px;display:flex;align-items:center;gap:.5rem;font-weight:500;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 4px #6f42c133}.manage-groups-button:hover{transform:translateY(-2px);box-shadow:0 4px 12px #6f42c14d}.group-selection{margin-top:1rem;padding:1rem;background:#fff;border-radius:8px;border:1px solid #dee2e6}.group-select-label{display:block;font-weight:500;color:#495057;margin-bottom:.5rem;font-size:.875rem}.group-select{width:100%;padding:.75rem;border:2px solid #e9ecef;border-radius:6px;background:#fff;font-size:.875rem;cursor:pointer;transition:border-color .3s ease}.group-select:focus{outline:none;border-color:#fe7743;box-shadow:0 0 0 3px #fe77431a}.group-management-panel{margin-top:1rem;padding:1rem;background:#fff;border-radius:8px;border:1px solid #dee2e6}.group-management-title{font-size:1rem;font-weight:600;color:#343a40;margin-bottom:1rem}.no-groups-message{text-align:center;color:#6c757d;font-style:italic;margin:1rem 0}.groups-list{display:flex;flex-direction:column;gap:1rem}.group-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef;transition:all .3s ease}.group-item:hover{transform:translateY(-1px);box-shadow:0 2px 8px #0000001a}.group-info{flex:1}.group-name{font-size:1rem;font-weight:600;color:#343a40;margin:0 0 .25rem}.group-details{font-size:.875rem;color:#6c757d;margin:0}.group-actions{display:flex;gap:.5rem;align-items:center}.download-group-button{background:linear-gradient(135deg,#17a2b8,#20c997);color:#fff;border:none;padding:.5rem .75rem;border-radius:6px;display:flex;align-items:center;gap:.25rem;font-size:.875rem;cursor:pointer;transition:all .3s ease}.download-group-button:hover{transform:translateY(-1px);box-shadow:0 2px 8px #17a2b84d}.delete-group-button{background:linear-gradient(135deg,#dc3545,#e74c3c);color:#fff;border:none;padding:.5rem;border-radius:6px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center}.delete-group-button:hover{transform:translateY(-1px);box-shadow:0 2px 8px #dc35454d}.selected-group-info{margin-top:1rem;padding:1rem;background:linear-gradient(135deg,#e3f2fd,#f3e5f5);border-radius:8px;border:1px solid #bbdefb}.selected-group-name{font-size:1rem;font-weight:600;color:#1565c0;margin:0 0 .25rem}.selected-group-details{font-size:.875rem;color:#424242;margin:0}.group-documents-preview{margin-top:1rem}.group-documents-preview details{cursor:pointer}.group-documents-preview summary{font-weight:500;color:#495057;padding:.5rem 0;list-style:none}.group-documents-preview summary::-webkit-details-marker{display:none}.group-documents-preview summary:before{content:"▶";display:inline-block;margin-right:.5rem;transition:transform .3s ease}.group-documents-preview details[open] summary:before{transform:rotate(90deg)}.documents-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:1rem;margin-top:1rem}.document-preview{background:#fff;border-radius:8px;padding:.75rem;border:1px solid #e9ecef;transition:all .3s ease}.document-preview:hover{transform:translateY(-2px);box-shadow:0 4px 12px #0000001a}.document-thumbnail{width:100%;height:80px;object-fit:cover;border-radius:4px;margin-bottom:.5rem}.document-preview-info{text-align:center}.document-type{font-size:.75rem;font-weight:500;color:#495057;margin:0 0 .25rem}.document-date{font-size:.6875rem;color:#6c757d;margin:0 0 .5rem}.remove-document-button{background:#dc3545;color:#fff;border:none;padding:.25rem;border-radius:4px;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;justify-content:center;margin:0 auto}.remove-document-button:hover{background:#c82333;transform:scale(1.1)}@media (max-width: 768px){.group-management-section{padding:1rem}.group-item{flex-direction:column;align-items:flex-start;gap:1rem}.group-actions{align-self:stretch;justify-content:space-between}.documents-grid{grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem}.flex-between .flex-gap-2{flex-direction:column;width:100%}.create-group-button,.manage-groups-button{width:100%;justify-content:center}}*{margin:0;padding:0;font-family:Courier New,Courier,monospace!important;line-height:1.5;font-weight:400;box-sizing:border-box}
