/* ── Sidebar ────────────────────────────────────────────── */ .sidebar { width: var(--sidebar-width); background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), transparent 100%), rgba(28, 25, 42, 0.82); backdrop-filter: blur(20px) saturate(160%); border-right: 1px solid rgba(255, 255, 255, 0.07); display: flex; flex-direction: column; overflow: hidden; flex-shrink: 0; box-shadow: inset -1px 0 0 rgba(255, 255, 255, 0.02); } .sidebar-header { padding: var(--sp-5) var(--sp-4) var(--sp-3); border-bottom: 1px solid var(--border); text-align: center; } .sidebar-title { font-size: 24px; font-weight: 700; color: var(--text); letter-spacing: -0.03em; text-decoration: none; display: inline-block; transition: color 0.15s ease; padding-bottom: 10px; } .sidebar-title:hover { color: var(--accent); } .btn-new { margin: var(--sp-3); padding: 10px 14px; background: var(--accent); color: #1a141f; border: none; border-radius: var(--radius); font-size: 13px; font-weight: 600; cursor: pointer; transition: background 0.15s ease, transform 0.15s ease, box-shadow 0.15s ease; text-align: left; box-shadow: 0 8px 24px rgba(232, 168, 124, 0.18); } .btn-new:hover { background: var(--accent-hover); transform: translateY(-1px); box-shadow: 0 12px 30px rgba(232, 168, 124, 0.22); } .sidebar-section-label { padding: 8px 16px 4px; font-size: 11px; font-weight: 600; letter-spacing: 0.08em; text-transform: uppercase; color: var(--text-dim); } .sidebar-list { list-style: none; overflow-y: auto; flex: 1; padding: 4px 8px 8px; } .sidebar-empty { padding: 8px; color: var(--text-dim); font-size: 13px; } .sidebar-item { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-radius: 10px; cursor: pointer; color: var(--text-muted); font-size: 13px; border: 1px solid transparent; transition: background 0.15s ease, color 0.15s ease, border-color 0.15s ease, transform 0.15s ease; user-select: none; } .sidebar-item:hover { background: rgba(255, 255, 255, 0.05); border-color: rgba(255, 255, 255, 0.06); color: var(--text); transform: translateX(1px); } .sidebar-item.selected { background: linear-gradient(180deg, rgba(255, 255, 255, 0.04), transparent 100%), rgba(232, 168, 124, 0.12); border-color: rgba(232, 168, 124, 0.22); color: var(--text); } .sidebar-icon { font-size: 12px; width: 16px; text-align: center; flex-shrink: 0; } .status-done { color: var(--green); } .status-error { color: var(--red); } .status-running { color: var(--accent); } .status-pending { color: var(--text-dim); } .sidebar-item-title { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; flex: 1; } .sidebar-type-badge { flex-shrink: 0; font-size: 10px; font-weight: 600; padding: 2px 5px; border-radius: var(--radius-xs); text-transform: uppercase; letter-spacing: 0.04em; } .sidebar-type-tv_show { background: rgba(99, 102, 241, 0.15); color: #818cf8; } .sidebar-type-movie { background: rgba(245, 158, 11, 0.15); color: #fbbf24; } .sidebar-item-delete { flex-shrink: 0; background: none; border: none; color: var(--text-dim); cursor: pointer; font-size: 14px; padding: 0 2px; line-height: 1; opacity: 0; transition: opacity 0.15s, color 0.15s; } .sidebar-item:hover .sidebar-item-delete { opacity: 1; } .sidebar-item-delete:hover { color: var(--red); } @media (max-width: 720px) { .sidebar { width: 100%; max-height: 42vh; border-right: none; border-bottom: 1px solid rgba(255, 255, 255, 0.07); } }