Spaces:
Running
Running
| /* ===== History Page ===== */ | |
| .history-layout { | |
| display: flex; | |
| width: 100%; | |
| height: 100%; | |
| overflow: hidden; | |
| } | |
| .history-left { | |
| flex: 1; | |
| display: flex; | |
| flex-direction: column; | |
| overflow: hidden; | |
| min-width: 0; | |
| } | |
| .history-right { | |
| width: 380px; | |
| display: flex; | |
| flex-direction: column; | |
| overflow: hidden; | |
| border-left: 1px solid var(--border); | |
| } | |
| .history-panel-header { | |
| padding: 8px 16px; | |
| font-size: 0.8rem; | |
| font-weight: 600; | |
| color: var(--text-muted); | |
| text-transform: uppercase; | |
| letter-spacing: 0.5px; | |
| border-bottom: 1px solid var(--border); | |
| background: var(--bg-secondary); | |
| flex-shrink: 0; | |
| display: flex; | |
| align-items: center; | |
| justify-content: space-between; | |
| gap: 8px; | |
| } | |
| .history-header-right { | |
| display: flex; | |
| align-items: center; | |
| gap: 6px; | |
| } | |
| .history-count { | |
| font-size: 0.75rem; | |
| color: var(--text-muted); | |
| font-weight: 400; | |
| } | |
| .history-panel-body { | |
| flex: 1; | |
| overflow-y: auto; | |
| padding: 0; | |
| } | |
| /* ===== Grid ===== */ | |
| #history-grid { | |
| display: grid; | |
| grid-template-columns: repeat(auto-fill, minmax(140px, 1fr)); | |
| gap: 4px; | |
| padding: 8px; | |
| } | |
| .history-card { | |
| position: relative; | |
| aspect-ratio: 1; | |
| border-radius: 6px; | |
| overflow: hidden; | |
| cursor: pointer; | |
| border: 2px solid transparent; | |
| transition: border-color var(--transition), transform var(--transition); | |
| background: var(--bg-input); | |
| } | |
| .history-card:hover { | |
| border-color: var(--border); | |
| transform: scale(1.02); | |
| } | |
| .history-card.selected { | |
| border-color: var(--accent); | |
| box-shadow: 0 0 10px var(--accent-glow); | |
| } | |
| .history-card img { | |
| width: 100%; | |
| height: 100%; | |
| object-fit: cover; | |
| } | |
| .history-card-badge { | |
| position: absolute; | |
| bottom: 4px; | |
| right: 4px; | |
| padding: 1px 6px; | |
| border-radius: 3px; | |
| font-size: 0.6rem; | |
| font-weight: 600; | |
| background: rgba(0,0,0,0.6); | |
| color: #fff; | |
| } | |
| .history-empty { | |
| grid-column: 1 / -1; | |
| text-align: center; | |
| padding: 60px 20px; | |
| color: var(--text-muted); | |
| font-size: 0.9rem; | |
| } | |
| /* ===== Detail Panel ===== */ | |
| .history-detail-img-wrap { | |
| padding: 8px; | |
| display: flex; | |
| justify-content: center; | |
| background: #000; | |
| flex-shrink: 0; | |
| max-height: 25vh; | |
| overflow: hidden; | |
| } | |
| .history-detail-img-wrap img { | |
| max-width: 100%; | |
| max-height: 25vh; | |
| object-fit: contain; | |
| border-radius: 4px; | |
| } | |
| .history-detail-scroll { | |
| flex: 1; | |
| overflow-y: auto; | |
| padding: 10px 14px; | |
| } | |
| /* Meta */ | |
| .history-meta-row { | |
| display: flex; | |
| gap: 6px; | |
| font-size: 0.8rem; | |
| margin-bottom: 2px; | |
| } | |
| .history-meta-key { | |
| color: var(--text-muted); | |
| min-width: 40px; | |
| } | |
| /* Action buttons */ | |
| .history-action-bar { | |
| padding: 8px 12px; | |
| border-top: 1px solid var(--border); | |
| background: var(--bg-secondary); | |
| flex-shrink: 0; | |
| display: flex; | |
| flex-direction: column; | |
| gap: 4px; | |
| } | |
| .history-btn-row { | |
| display: flex; | |
| gap: 4px; | |
| } | |
| .history-btn-row .btn-mask { | |
| flex: 1; | |
| font-size: 0.72rem; | |
| padding: 4px 4px; | |
| min-width: 0; | |
| white-space: nowrap; | |
| overflow: hidden; | |
| text-overflow: ellipsis; | |
| } | |
| .history-no-params { | |
| color: var(--text-muted); | |
| font-size: 0.82rem; | |
| font-style: italic; | |
| padding: 8px 0; | |
| } | |
| /* Toolbar buttons */ | |
| .history-tool-btn { | |
| background: none; | |
| border: none; | |
| color: var(--text-muted); | |
| cursor: pointer; | |
| font-size: 0.82rem; | |
| padding: 2px 6px; | |
| border-radius: 4px; | |
| transition: all var(--transition); | |
| } | |
| .history-tool-btn:hover { | |
| color: var(--accent); | |
| background: var(--bg-hover); | |
| } | |
| .history-tool-btn.danger:hover { | |
| color: var(--error); | |
| } | |
| @media (max-width: 900px) { | |
| .history-layout { flex-direction: column; } | |
| .history-right { | |
| width: 100%; | |
| height: 40%; | |
| max-width: none; | |
| min-width: 0; | |
| border-left: none; | |
| border-top: 1px solid var(--border); | |
| } | |
| } | |
| /* ===== Search Bar ===== */ | |
| .history-search-bar { | |
| padding: 8px 12px; | |
| border-bottom: 1px solid var(--border); | |
| background: var(--bg-secondary); | |
| flex-shrink: 0; | |
| } | |
| .history-search-wrap { | |
| display: flex; | |
| align-items: center; | |
| background: var(--bg-input); | |
| border: 1px solid var(--border); | |
| border-radius: var(--radius); | |
| padding: 0 8px; | |
| transition: border-color var(--transition); | |
| } | |
| .history-search-wrap:focus-within { | |
| border-color: var(--accent); | |
| box-shadow: 0 0 0 2px var(--accent-glow); | |
| } | |
| .history-search-icon { | |
| font-size: 0.85rem; | |
| opacity: 0.5; | |
| flex-shrink: 0; | |
| margin-right: 6px; | |
| } | |
| .history-search-input { | |
| flex: 1; | |
| background: none; | |
| border: none; | |
| outline: none; | |
| color: var(--text-primary); | |
| font-size: 0.85rem; | |
| padding: 7px 0; | |
| font-family: inherit; | |
| min-width: 0; | |
| } | |
| .history-search-input::placeholder { | |
| color: var(--text-muted); | |
| } | |
| .history-search-clear { | |
| background: none; | |
| border: none; | |
| color: var(--text-muted); | |
| cursor: pointer; | |
| font-size: 0.7rem; | |
| padding: 2px 4px; | |
| border-radius: 50%; | |
| transition: all var(--transition); | |
| flex-shrink: 0; | |
| line-height: 1; | |
| } | |
| .history-search-clear:hover { | |
| color: var(--text-primary); | |
| background: var(--bg-hover); | |
| } |