.te-header { padding: 8px 4px 4px; display: flex; align-items: baseline; gap: 14px; flex-wrap: wrap; border-bottom: 1px solid #e3e3e8; margin-bottom: 10px; } .te-title { font-size: 19px; font-weight: 700; color: #1a1a1a; } .te-sub { font-size: 13px; color: #666; } .te-privacy { margin: 0 0 14px 0; font-size: 12px; color: #555; } .te-privacy summary { cursor: pointer; color: #444; font-weight: 600; } .te-privacy p { margin: 6px 0 0 0; background: #fff9e6; border-left: 3px solid #d4a017; padding: 8px 10px; border-radius: 4px; } .te-steps { display: flex; gap: 18px; flex-wrap: wrap; margin: 0 0 10px 0; font-size: 13px; color: #444; } .te-step { background: #eef3fa; border: 1px solid #cdd9e9; padding: 5px 10px; border-radius: 4px; } .te-input-row { align-items: flex-start; margin-bottom: 10px; } .te-input-image { border: 2px dashed #b0b8c8; border-radius: 8px; background: #fafbff; transition: border-color 120ms ease; } .te-input-image:hover { border-color: #6e7fa0; } /* Make Gradio's source-mode toggle (webcam / upload icons) far more * prominent than the default tiny icon strip. Each becomes a labelled * pill button. */ .te-input-image .source-selection, .te-input-image .source-wrap { gap: 8px !important; padding: 8px !important; justify-content: center !important; } .te-input-image .source-selection button, .te-input-image .source-wrap button { background: #1d4ed8 !important; color: #fff !important; border: none !important; border-radius: 6px !important; padding: 8px 14px !important; font-size: 14px !important; font-weight: 600 !important; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.15); } .te-input-image .source-selection button:hover, .te-input-image .source-wrap button:hover { background: #1e40af !important; } .te-input-image .source-selection button svg, .te-input-image .source-wrap button svg { width: 18px !important; height: 18px !important; margin-right: 6px; } /* Hint label that sits over the empty state, in case Gradio chrome * keeps the source icons subtle on some browsers. */ .te-input-image .empty, .te-input-image .upload-container .empty { color: #355 !important; font-size: 14px !important; } .te-status { margin: 4px 0 12px; font-size: 13px; color: #444; font-weight: 600; } .te-tile-row { margin-bottom: 8px; gap: 8px; } .te-tile-col { padding: 0 !important; } .te-tile-img { border-radius: 6px; } .te-tile-img img { object-fit: contain; background: #fff; } .te-retry { width: 100%; margin-top: 4px; font-size: 12px; } .te-export-row { margin-top: 14px; align-items: end; } .te-submit { margin-top: 6px; } .te-footer { margin: 24px 0 12px; padding: 10px 4px 0; border-top: 1px solid #e3e3e8; font-size: 11.5px; color: #777; text-align: center; font-style: italic; }