| body { |
| font-family: 'Segoe UI', sans-serif; |
| background-color: #f0f2f5; |
| color: #333; |
| margin: 0; |
| padding: 20px; |
| } |
|
|
| .container { |
| max-width: 800px; |
| margin: 0 auto; |
| padding: 30px; |
| background-color: #fff; |
| box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1); |
| border-radius: 12px; |
| } |
|
|
| h1 { |
| text-align: center; |
| color: #1a73e8; |
| margin-bottom: 30px; |
| } |
|
|
| .input-section { |
| display: flex; |
| align-items: center; |
| gap: 20px; |
| margin-bottom: 30px; |
| } |
|
|
| .input-group { |
| flex: 1; |
| } |
|
|
| .input-group label { |
| display: block; |
| margin-bottom: 8px; |
| font-weight: 500; |
| } |
|
|
| .separator { |
| font-weight: 500; |
| color: #666; |
| } |
|
|
| input[type="file"], |
| input[type="text"] { |
| width: 100%; |
| padding: 12px; |
| border: 2px solid #e0e0e0; |
| border-radius: 8px; |
| transition: border-color 0.3s; |
| } |
|
|
| input[type="text"]:focus { |
| border-color: #1a73e8; |
| outline: none; |
| } |
|
|
| .label-section { |
| margin: 20px 0; |
| } |
|
|
| .label-category { |
| margin-bottom: 20px; |
| } |
|
|
| .label-category h3 { |
| margin-bottom: 10px; |
| font-size: 18px; |
| color: #1a73e8; |
| } |
|
|
| .label-grid { |
| display: grid; |
| grid-template-columns: repeat(auto-fill, minmax(150px, 1fr)); |
| gap: 15px; |
| margin-top: 10px; |
| } |
|
|
| .label-option { |
| display: flex; |
| align-items: center; |
| padding: 10px; |
| border: 2px solid #e0e0e0; |
| border-radius: 8px; |
| cursor: pointer; |
| transition: all 0.3s; |
| } |
|
|
| .label-option:hover { |
| border-color: #1a73e8; |
| } |
|
|
| .label-option input[type="checkbox"] { |
| margin-right: 10px; |
| } |
|
|
| .selected-labels-container { |
| margin: 20px 0; |
| padding: 10px; |
| background-color: #f8f9fa; |
| border: 1px solid #ddd; |
| border-radius: 8px; |
| } |
|
|
| .selected-labels-container h3 { |
| margin: 0 0 10px; |
| font-size: 16px; |
| color: #1a73e8; |
| } |
|
|
| .selected-label { |
| display: inline-block; |
| margin: 4px; |
| padding: 5px 10px; |
| background-color: #e0f7fa; |
| border-radius: 12px; |
| font-size: 14px; |
| color: #00796b; |
| } |
|
|
| .selected-labels-container p { |
| color: #666; |
| } |
|
|
| .default-labels { |
| display: flex; |
| gap: 10px; |
| padding: 2px; |
| } |
|
|
| .default-labels .label-option { |
| padding: 2px 5px; |
| border: 1px solid #ccc; |
| border-radius: 4px; |
| } |
|
|
| .search-container { |
| position: relative; |
| margin: 20px 0; |
| } |
|
|
| .search-input { |
| width: 100%; |
| padding: 12px; |
| border: 2px solid #e0e0e0; |
| border-radius: 8px; |
| font-size: 16px; |
| } |
|
|
| .search-input:focus { |
| border-color: #1a73e8; |
| outline: none; |
| } |
|
|
| .label-dropdown { |
| position: absolute; |
| top: 100%; |
| left: 0; |
| right: 0; |
| background: white; |
| border: 1px solid #e0e0e0; |
| border-radius: 8px; |
| max-height: 400px; |
| overflow-y: auto; |
| z-index: 1000; |
| box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); |
| } |
|
|
| .dropdown-option { |
| padding: 8px 12px 8px 24px; |
| display: flex; |
| align-items: center; |
| gap: 12px; |
| cursor: pointer; |
| border-bottom: 1px solid #f0f0f0; |
| } |
|
|
| .dropdown-option:hover { |
| background-color: #f8f9fa; |
| } |
|
|
| .dropdown-option:last-child { |
| border-bottom: none; |
| } |
|
|
| .label-text { |
| flex: 1; |
| } |
|
|
| .category-badge { |
| background-color: #e8f0fe; |
| color: #1a73e8; |
| padding: 2px 8px; |
| border-radius: 12px; |
| font-size: 12px; |
| } |
|
|
| .selected-label { |
| display: inline-flex; |
| align-items: center; |
| gap: 8px; |
| background-color: #e8f0fe; |
| border: 1px solid #1a73e8; |
| border-radius: 16px; |
| padding: 4px 12px; |
| margin: 4px; |
| font-size: 14px; |
| } |
|
|
| .remove-label { |
| cursor: pointer; |
| color: #1a73e8; |
| font-weight: bold; |
| padding-left: 4px; |
| } |
|
|
| .remove-label:hover { |
| color: #1557b0; |
| } |
|
|
| |
| #analyzeBtn { |
| display: block; |
| width: 200px; |
| margin: 20px auto; |
| padding: 12px 24px; |
| background-color: #1a73e8; |
| color: white; |
| border: none; |
| border-radius: 8px; |
| font-size: 16px; |
| font-weight: 500; |
| cursor: pointer; |
| transition: background-color 0.3s; |
| } |
|
|
| #analyzeBtn:hover { |
| background-color: #1557b0; |
| } |
|
|
| #analyzeBtn:disabled { |
| background-color: #ccc; |
| cursor: not-allowed; |
| } |
|
|
| |
| .preview-section { |
| margin: 20px 0; |
| text-align: center; |
| display: flex; |
| flex-direction: column; |
| align-items: center; |
| } |
|
|
| #imagePreview { |
| max-width: 100%; |
| max-height: 400px; |
| object-fit: contain; |
| margin: 0 auto; |
| } |
|
|
| |
| .prediction-result { |
| margin: 10px 0; |
| padding: 10px; |
| background-color: #f8f9fa; |
| border-radius: 8px; |
| } |
|
|
| .progress-bar { |
| height: 24px; |
| background-color: #e0e0e0; |
| border-radius: 12px; |
| overflow: hidden; |
| margin: 8px 0; |
| flex-grow: 1; |
| margin-right: 10px; |
| } |
|
|
| .progress { |
| height: 100%; |
| background-color: #1a73e8; |
| transition: width 0.3s ease; |
| } |
|
|
| .prediction-result { |
| display: flex; |
| align-items: center; |
| gap: 10px; |
| margin: 10px 0; |
| } |
|
|
| .prediction-result strong { |
| min-width: 120px; |
| } |
|
|
| .prediction-result span { |
| min-width: 80px; |
| text-align: right; |
| } |
|
|
| .results-section h2 { |
| color: #1a73e8; |
| font-size: 20px; |
| margin: 20px 0 15px; |
| } |
|
|
| |
| .input-method-selection { |
| margin-bottom: 20px; |
| } |
|
|
| .radio-label { |
| margin-right: 15px; |
| } |
|
|
| |
| .results-section { |
| min-height: 100px; |
| padding: 15px; |
| background-color: #f8f9fa; |
| border-radius: 8px; |
| margin-top: 20px; |
| } |
|
|
| .results-section:empty::before { |
| content: 'Analysis results will appear here'; |
| color: #666; |
| font-style: italic; |
| } |
|
|
| .helper-text { |
| color: #666; |
| font-size: 0.9em; |
| margin: 8px 0; |
| font-style: italic; |
| } |
|
|
| .search-wrapper { |
| display: flex; |
| gap: 10px; |
| align-items: center; |
| } |
|
|
| .search-input { |
| flex: 1; |
| } |
|
|
| .show-all-btn { |
| padding: 12px 20px; |
| background-color: #1a73e8; |
| color: white; |
| border: none; |
| border-radius: 8px; |
| cursor: pointer; |
| font-size: 14px; |
| white-space: nowrap; |
| } |
|
|
| .show-all-btn:hover { |
| background-color: #1557b0; |
| } |
|
|
| .dropdown-category-header { |
| padding: 8px 12px; |
| background-color: #f0f2f5; |
| font-weight: bold; |
| color: #1a73e8; |
| border-bottom: 1px solid #e0e0e0; |
| } |
|
|