body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*{box-sizing:border-box;margin:0;padding:0}body{background-color:#f5f7fa;color:#333;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,sans-serif}.app{min-height:100vh}.navbar{align-items:center;background:#fff;box-shadow:0 2px 4px #0000001a;display:flex;justify-content:space-between;padding:1rem 2rem}.navbar-brand{color:#2563eb;font-size:1.5rem;font-weight:700;text-decoration:none}.navbar-nav{align-items:center;display:flex;gap:1rem}.nav-link{border-radius:6px;color:#666;padding:.5rem 1rem;text-decoration:none;transition:all .2s}.nav-link:hover{background:#f0f4ff;color:#2563eb}.nav-user{color:#333}.btn,.nav-user{font-weight:500}.btn{border:none;border-radius:8px;cursor:pointer;display:inline-block;font-size:1rem;padding:.75rem 1.5rem;text-decoration:none;transition:all .2s}.btn-primary{background:#2563eb;color:#fff}.btn-primary:hover{background:#1d4ed8}.btn-secondary{background:#e5e7eb;color:#374151}.btn-secondary:hover{background:#d1d5db}.btn-danger{background:#ef4444;color:#fff}.btn-danger:hover{background:#dc2626}.btn-sm{font-size:.875rem;padding:.5rem 1rem}.form-group{margin-bottom:1.5rem}.form-label{color:#374151;display:block;font-weight:500;margin-bottom:.5rem}.form-input{border:1px solid #d1d5db;border-radius:8px;font-size:1rem;padding:.75rem 1rem;transition:border-color .2s;width:100%}.form-input:focus{border-color:#2563eb;box-shadow:0 0 0 3px #2563eb1a;outline:none}.auth-container{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:2rem}.auth-card{background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000001a;max-width:420px;padding:2.5rem;width:100%}.auth-title{font-size:1.75rem;font-weight:700;margin-bottom:.5rem;text-align:center}.auth-subtitle{margin-bottom:2rem}.auth-footer,.auth-subtitle{color:#6b7280;text-align:center}.auth-footer{margin-top:1.5rem}.auth-footer a{color:#2563eb;text-decoration:none}.error-message{background:#fef2f2;border-radius:8px;color:#dc2626;font-size:.875rem;margin-bottom:1rem;padding:.75rem 1rem}.dashboard{margin:0 auto;max-width:1200px;padding:2rem}.dashboard-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:2rem}.dashboard-title{font-size:1.75rem;font-weight:700}.upload-section{background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.upload-area{border:2px dashed #d1d5db;border-radius:12px;cursor:pointer;padding:3rem 2rem;text-align:center;transition:all .2s}.upload-area:hover{background:#f0f4ff;border-color:#2563eb}.upload-area.dragging{background:#eff6ff;border-color:#2563eb}.upload-icon{font-size:3rem;margin-bottom:1rem}.upload-text{color:#6b7280;margin-bottom:.5rem}.upload-hint{color:#9ca3af;font-size:.875rem}.results-section{background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000001a;margin-bottom:2rem;padding:2rem}.results-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr;margin-bottom:2rem}@media (max-width:768px){.results-grid{grid-template-columns:1fr}}.result-image{border:1px solid #e5e7eb;border-radius:8px;width:100%}.result-image-large{max-height:600px;object-fit:contain;transition:transform .2s}.result-image-large:hover{transform:scale(1.02)}.results-grid-large{grid-template-columns:1.5fr 1fr}@media (max-width:768px){.results-grid-large{grid-template-columns:1fr}}.image-container{min-width:0}.fullscreen-overlay{align-items:center;background:#000000e6;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.fullscreen-content{display:flex;flex-direction:column;max-height:95vh;max-width:95vw}.fullscreen-header{align-items:center;background:#ffffff1a;border-radius:8px 8px 0 0;display:flex;justify-content:space-between;padding:1rem}.fullscreen-close{background:#ef4444!important;color:#fff!important}.fullscreen-close:hover{background:#dc2626!important}.fullscreen-image{border-radius:0 0 8px 8px;max-height:calc(95vh - 80px);max-width:100%;object-fit:contain}.result-details h3{color:#374151;margin-bottom:1rem}.detection-list{list-style:none}.detection-item{border-bottom:1px solid #e5e7eb;display:flex;justify-content:space-between;padding:.75rem}.detection-item:last-child{border-bottom:none}.detection-class{font-weight:500}.detection-count{background:#eff6ff;border-radius:999px;color:#2563eb;font-size:.875rem;padding:.25rem .75rem}.history-section{background:#fff;border-radius:16px;box-shadow:0 1px 3px #0000001a;padding:2rem}.history-title{font-size:1.25rem;font-weight:600;margin-bottom:1.5rem}.history-table{border-collapse:collapse;width:100%}.history-table td,.history-table th{border-bottom:1px solid #e5e7eb;padding:1rem;text-align:left}.history-table th{color:#6b7280;font-size:.875rem;font-weight:600;text-transform:uppercase}.status-badge{border-radius:999px;font-size:.75rem;font-weight:500;padding:.25rem .75rem}.status-completed{background:#d1fae5;color:#065f46}.status-pending{background:#fef3c7;color:#92400e}.status-failed{background:#fee2e2;color:#991b1b}.loading{align-items:center;display:flex;justify-content:center;padding:3rem}.spinner{animation:spin 1s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#2563eb;height:40px;width:40px}@keyframes spin{to{transform:rotate(1turn)}}.confidence-slider{margin-top:1rem}.slider-label{display:flex;justify-content:space-between;margin-bottom:.5rem}.slider-input{-webkit-appearance:none;background:#e5e7eb;border-radius:3px;height:6px;outline:none;width:100%}.slider-input::-webkit-slider-thumb{-webkit-appearance:none;background:#2563eb;border-radius:50%;cursor:pointer;height:18px;width:18px}.empty-state{color:#6b7280;padding:3rem;text-align:center}.empty-icon{font-size:3rem;margin-bottom:1rem}.summary-card{background:linear-gradient(135deg,#2563eb,#1d4ed8);border-radius:12px;color:#fff;margin-bottom:1.5rem;padding:1.5rem}.summary-title{font-size:.875rem;margin-bottom:.5rem;opacity:.9}.summary-value{font-size:2rem;font-weight:700}
/*# sourceMappingURL=main.73247f92.css.map*/