/* ============================================================
   TAC Viewer — Panel de thumbnails y controles de cine
   ============================================================ */

#seriesPanel {
    background: var(--bg-app);
    border-right: 1px solid var(--border);
    display: flex; flex-direction: column;
    overflow: hidden;
}

/* ── Thumbnail strip ─────────────────────────────────────── */
#thumbnailStrip {
    flex: 1;
    overflow-y: auto; overflow-x: hidden;
    padding: 6px 4px;
    display: flex; flex-direction: column; gap: 3px;
    scrollbar-width: thin;
}

.thumb-item {
    position: relative;
    width: 80px;
    flex-shrink: 0;
    border-radius: var(--radius-sm);
    border: 1.5px solid transparent;
    overflow: hidden;
    cursor: pointer;
    transition: border-color var(--fast), transform var(--fast);
    background: #000;
    align-self: center;
}
.thumb-item:hover {
    border-color: var(--border-strong);
    transform: scale(1.03);
}
.thumb-item.active {
    border-color: var(--thumb-active-border);
    box-shadow: 0 0 0 1px var(--thumb-active-border);
}

.thumb-item canvas {
    display: block;
    width: 80px; height: 80px;
    image-rendering: pixelated;
}

.thumb-label {
    position: absolute; bottom: 0; left: 0; right: 0;
    background: rgba(0,0,0,0.65);
    color: var(--overlay-text);
    font-size: 10px; font-weight: 600;
    text-align: center; padding: 2px 0;
    pointer-events: none;
}

/* Loading skeleton */
.thumb-item.loading canvas {
    background: var(--bg-secondary);
    animation: pulse 1.2s ease infinite;
}

/* ── Slice counter ──────────────────────────────────────── */
#sliceCounter {
    text-align: center;
    padding: 4px 0;
    font-size: 11px; font-weight: 600;
    color: var(--text-tertiary);
    border-top: 1px solid var(--border);
    background: var(--bg-app);
}

/* Cine controls movidos al status bar — ver layout.css .status-cine */

/* ── Series tab bar (multi-serie) ───────────────────────── */
.series-tab-bar {
    display: flex; flex-wrap: wrap; gap: 2px;
    padding: 4px 4px 0;
    border-bottom: 1px solid var(--border);
    flex-shrink: 0;
}
.series-tab-bar.hidden { display: none; }
.series-tab {
    display: flex; flex-direction: column; align-items: center;
    flex: 1; min-width: 40px; max-width: 80px;
    padding: 4px 6px;
    border-radius: var(--radius-sm) var(--radius-sm) 0 0;
    border: 1px solid var(--border); border-bottom: none;
    background: var(--bg-secondary);
    color: var(--text-tertiary);
    font-size: 10px; cursor: pointer;
    transition: all var(--fast);
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.series-tab:hover { background: var(--bg-hover); color: var(--text-primary); }
.series-tab.active {
    background: var(--brand-accent-dim, rgba(56,189,248,.12));
    color: var(--brand-accent);
    border-color: var(--brand-accent);
    font-weight: 600;
}
.series-tab-num { font-size: 12px; font-weight: 700; line-height: 1; }
.series-tab-name { font-size: 9px; max-width: 70px; overflow: hidden; text-overflow: ellipsis; }
